home *** CD-ROM | disk | FTP | other *** search
/ Shareware Overload Trio 2 / Shareware Overload Trio Volume 2 (Chestnut CD-ROM).ISO / dir37 / incx110d.zip / INC-DOCS.LZH / INCONTXT.DOC < prev    next >
Text File  |  1993-01-31  |  346KB  |  7,612 lines

  1.  
  2.            
  3.  
  4.  
  5.  
  6.  
  7.  
  8.                   +----------------------------------------+
  9.                   |                                        |
  10.                   |                                        |
  11.                   |              User Guide                |
  12.                   |                                        |
  13.                   |             InContext(TM)              |
  14.                   |        Work Environment Manager        |
  15.                   |             Version 1.10               |
  16.                   |                                        |
  17.                   |                  by                    |
  18.                   |                                        |
  19.                   |         H. Rudy Ramsey, Ph.D.          |
  20.                   |                                        |
  21.                   |                                        |
  22.                   +----------------------------------------+
  23.  
  24.                    Copyright 1991-93 Rams' Island Software
  25.                              All rights reserved
  26.  
  27.  
  28.  
  29.  
  30.  
  31.  
  32.  
  33.  
  34.  
  35.  
  36.  
  37.  
  38.  
  39.  
  40.  
  41.  
  42.  
  43.    Rams' Island Software
  44.    7644 Lakecliff                          _______
  45.    Parker, CO 80134-5904 (USA)        ____|__     |                (R)
  46.                                    --|       |    |-------------------
  47.    Voice: (303) 841-2848             |   ____|__  |  Association of
  48.    BBS:   (303) 841-6269             |  |       |_|  Shareware
  49.    CompuServe: 76244,324             |__|   o   |    Professionals
  50.                                    -----|   |   |---------------------
  51.    FidoNet:    1:104/333                |___|___|    MEMBER
  52.    RIME:        RAMSISLE
  53.  
  54.  
  55.  
  56.  
  57.                                                                             
  58.  
  59.  
  60.  
  61.  
  62.    InContext User Guide                                   TABLE OF CONTENTS
  63.  
  64.  
  65.                              +-------------------+
  66.                              | TABLE OF CONTENTS |
  67.                              +-------------------+
  68.  
  69.  
  70.     ACKNOWLEDGMENTS ....................................................  1
  71.  
  72.     OVERVIEW ...........................................................  2
  73.        Purpose and Features of InContext ...............................  2
  74.        Here's What the Reviewers Say ...................................  3
  75.        System Requirements .............................................  3
  76.        Registration Information ........................................  4
  77.        Trial Use License ...............................................  5
  78.        Limited Warranty ................................................  6
  79.        Technical Support ...............................................  7
  80.           Rams' Island BBS .............................................  7
  81.           CompuServe Information System ................................  7
  82.           Voice Telephone ..............................................  7
  83.           Mail .........................................................  8
  84.        Association of Shareware Professionals ..........................  9
  85.  
  86.     INSTALLATION AND SETUP ............................................. 10
  87.        Quick Start ..................................................... 10
  88.        How to Install and Start the Program ............................ 10
  89.           Installing from Diskette(s) .................................. 11
  90.           Installing from a Hard Drive ................................. 11
  91.        How to Start InContext .......................................... 12
  92.        What There Is, and Where ........................................ 13
  93.        Application Notes ............................................... 14
  94.  
  95.     PHILOSOPHY OF INCONTEXT ............................................ 15
  96.        What is InContext? .............................................. 15
  97.        Why Integration? ................................................ 15
  98.        Space ........................................................... 16
  99.        Time ............................................................ 16
  100.        Plans ........................................................... 16
  101.        Procedures ...................................................... 17
  102.        Objects, Classes, and Actions ................................... 17
  103.        Activities ...................................................... 18
  104.  
  105.     INTERACTING WITH INCONTEXT ......................................... 19
  106.        How Screen Displays Will Be Shown in this User Guide ............ 19
  107.        The Main Display ................................................ 20
  108.        Other Displays .................................................. 21
  109.        Selecting Things ................................................ 22
  110.           Selecting Things with A Mouse ................................ 22
  111.           Selecting Things Using the Cursor Keys ....................... 22
  112.           Selecting Things Using the Regular Keyboard .................. 23
  113.           Selecting Multiple Objects ................................... 23
  114.  
  115.  
  116.    InContxt.DOC                      -ii-                      January 1993
  117.  
  118.  
  119.  
  120.  
  121.    InContext User Guide                                   TABLE OF CONTENTS
  122.  
  123.  
  124.        Display Scrolling and Paging .................................... 23
  125.           Scrolling and Paging Using the Keyboard ...................... 23
  126.           Scrolling and Paging Using the Mouse ......................... 24
  127.        Escaping from Windows ........................................... 24
  128.        Function Keys ................................................... 24
  129.        Help ............................................................ 25
  130.        The InContext Tutorial .......................................... 26
  131.        Editing in InContext ............................................ 26
  132.           Editing Text ................................................. 26
  133.           Editing InContext Options .................................... 29
  134.           Editing Dictionaries ......................................... 30
  135.        The Internal File Viewer ........................................ 32
  136.        The Internal Archive Viewer ..................................... 33
  137.           InContext Makes Special Use of LHA ........................... 34
  138.           Viewing Archives ............................................. 34
  139.  
  140.     OBJECTS AND VIEWS .................................................. 36
  141.        Object Classes .................................................. 36
  142.        Focussing by View and Class ..................................... 38
  143.        Defining the Views .............................................. 41
  144.        Selecting an Object (or Multiple Objects) ....................... 43
  145.        The Objects Display ............................................. 44
  146.           Editing Object Properties .................................... 45
  147.           Object Display Formats ....................................... 46
  148.           Object Sort Orders ........................................... 46
  149.  
  150.     SPACE .............................................................. 47
  151.        Spatial Organization ............................................ 47
  152.        Moving from Place to Place ...................................... 48
  153.           The Space Command ............................................ 48
  154.           The Go Display ............................................... 50
  155.           Editing Directory Information ................................ 51
  156.  
  157.     CLASSES AND ACTIONS ................................................ 53
  158.        The Basics of Class Definition .................................. 53
  159.        Creating and Modifying Templates ................................ 54
  160.        Action Lists .................................................... 54
  161.           The Common Action List ....................................... 55
  162.           The Action List for an Individual Class ...................... 57
  163.           The Group Action List ........................................ 57
  164.        Editing the Action Lists ........................................ 58
  165.        How Procedures Work ............................................. 60
  166.           Execution of Procedures ...................................... 60
  167.           A Small Example .............................................. 61
  168.           Variable Substitution ........................................ 62
  169.           Comments in InContext Procedures ............................. 64
  170.           InContext Internal Commands .................................. 64
  171.           Some Example Procedures ...................................... 77
  172.           Macros ....................................................... 79
  173.  
  174.  
  175.    InContxt.DOC                      -iii-                     January 1993
  176.  
  177.  
  178.  
  179.  
  180.    InContext User Guide                                   TABLE OF CONTENTS
  181.  
  182.  
  183.           Special Macros Used to Control InContext ..................... 80
  184.           Other Macros You May Want to Change .......................... 81
  185.        The Do Display .................................................. 81
  186.  
  187.     TIME, PLANS, AND WORK-IN-PROGRESS .................................. 83
  188.        The Time Command and Display .................................... 83
  189.        What Is a Task? ................................................. 84
  190.           Types of Tasks ............................................... 85
  191.           Repeating Tasks .............................................. 85
  192.           Task Notes ................................................... 86
  193.        Adding and Editing Tasks ........................................ 86
  194.           Setting Up a Repeating Task .................................. 88
  195.           Setting Task Priorities ...................................... 89
  196.           The Note Number .............................................. 90
  197.           Organizing Tasks by Project .................................. 90
  198.           Using Task Successors and Floating Tasks ..................... 91
  199.           Setting a Task Context ....................................... 92
  200.        Selecting a Task ................................................ 93
  201.        Time Information on the Main Display ............................ 93
  202.        The Plans Display ............................................... 94
  203.           The Plans Display in Gantt Mode .............................. 95
  204.           The Plans Display in Text Mode ............................... 95
  205.           Other Features of the Plans Display .......................... 96
  206.        The Work-in-Progress Display .................................... 97
  207.           Special Properties of The Current Task ....................... 98
  208.           Selecting Things on the WiP Display .......................... 98
  209.           Popping the Top Item off the WiP Display ..................... 99
  210.           Selecting Today's Tasks ...................................... 99
  211.           Clearing the WiP List ........................................100
  212.           Interruptions ................................................100
  213.  
  214.     MORE COMMANDS AND OPTIONS ..........................................101
  215.        More Commands ...................................................101
  216.        Creating Objects and Directories ................................103
  217.        Changing InContext Options ......................................104
  218.           Changing the Display Colors ..................................104
  219.           Changing Disk Drive Options ..................................106
  220.           Changing Subprogram Execution Options ........................108
  221.           Changing Formats and User Information ........................110
  222.           Video and Display Options ....................................113
  223.           Miscellaneous Options ........................................115
  224.        Multiple Users ..................................................117
  225.  
  226.     EXAMPLES AND APPLICATION NOTES .....................................119
  227.        Usage Examples and Application Notes ............................119
  228.        A Usage Example: Document Archives ..............................120
  229.           A Simple Approach ............................................120
  230.           Handling Multiple Archives ...................................121
  231.           Automatic Archiving by Class .................................121
  232.  
  233.  
  234.    InContxt.DOC                      -iv-                      January 1993
  235.  
  236.  
  237.  
  238.  
  239.    InContext User Guide                                   TABLE OF CONTENTS
  240.  
  241.  
  242.           Saving to Desired Archive by Menu Selection ..................122
  243.        A Class AppNote: Lotus 1-2-3 ....................................123
  244.        A Tool AppNote: 4PRINT Laser Print Utility ......................124
  245.  
  246.  
  247.  
  248.  
  249.  
  250.  
  251.  
  252.  
  253.  
  254.  
  255.  
  256.  
  257.  
  258.  
  259.  
  260.  
  261.  
  262.  
  263.  
  264.  
  265.  
  266.  
  267.  
  268.  
  269.  
  270.  
  271.  
  272.  
  273.  
  274.  
  275.  
  276.  
  277.  
  278.  
  279.  
  280.  
  281.  
  282.  
  283.  
  284.  
  285.  
  286.  
  287.  
  288.  
  289.  
  290.  
  291.  
  292.  
  293.    InContxt.DOC                      -v-                       January 1993
  294.  
  295.  
  296.  
  297.  
  298.  
  299.  
  300.    InContext User Guide                                     ACKNOWLEDGMENTS
  301.  
  302.  
  303.     
  304.                               +-----------------+
  305.                               | ACKNOWLEDGMENTS |
  306.                               +-----------------+
  307.  
  308.  
  309.  
  310.       Sincere thanks are expressed to:
  311.  
  312.          o  My  family  and  friends,  for  encouraging  the concept -- and
  313.             tolerating the reality -- of the long and  arduous  development
  314.             process.
  315.  
  316.          o  Our  beta  testers, many of whom are members of the Connecticut
  317.             PC User's Group, the Danbury  Area  Computer  Society,  or  the
  318.             Association of Shareware Professionals. Special thanks to Steve
  319.             Hodsdon.
  320.  
  321.          o  The  CompuServe  community -- especially the SHAREWARE, IBMPRO,
  322.             and WORK forums -- for providing a  collegial  atmosphere,  and
  323.             for many instances of selfless sharing and enthusiastic help.
  324.  
  325.                                                         -RR-
  326.  
  327.  
  328.  
  329.       InContext  is  written  in  Microsoft C 5.1 and assembly language. It
  330.       swaps itself out of memory during execution of other  programs  using
  331.       the  "Hold  Everything"  package, by South Mountain Software. It also
  332.       uses the CTRLCLIB package, by Trendtech Corp.
  333.  
  334.  
  335.  
  336.       "Rams' Island" and the Rams' Island logo are registered trademarks of
  337.       Rams' Island Software.
  338.  
  339.       "InContext" is a trademark of Rams' Island Software.
  340.  
  341.       Program and Documentation Copyright 1991 Rams' Island  Software.  All
  342.       rights reserved.
  343.  
  344.  
  345.  
  346.            1-2-3 is a trademark of Lotus Development Corporation.
  347.            4PRINT is a trademark of Korenthal Associates.
  348.            BRIEF is a trademark of UnderWare, Inc.
  349.            DESQview is a trademark of Quarterdeck Office Systems.
  350.            MS-DOS is a trademark of Microsoft Corporation.
  351.  
  352.  
  353.  
  354.    InContxt.DOC                       -1-                      January 1993
  355.  
  356.  
  357.  
  358.  
  359.    InContext User Guide                                            OVERVIEW
  360.  
  361.  
  362.        
  363.                                  +----------+
  364.                                  | OVERVIEW |
  365.                                  +----------+
  366.  
  367.  
  368.  
  369.    Purpose and Features of InContext
  370.    ---------------------------------
  371.  
  372.       Welcome to the InContext(TM) Work Environment Manager!
  373.  
  374.       InContext  is designed to help you get the most out of your IBM PC or
  375.       compatible system. The purpose of InContext is to help you  create  a
  376.       smoothly  integrated  computer-based  work environment, organized ac-
  377.       cording to YOUR needs and activities.
  378.  
  379.       You're probably quite accustomed to using your computer to WORK. It's
  380.       unlikely, though, that you are realizing the full potential  of  your
  381.       computer to help you ORGANIZE and MANAGE that work, and the space and
  382.       files  it  involves. InContext helps you organize your computer-based
  383.       work environment YOUR way, and allows you to  work  more  efficiently
  384.       there.
  385.  
  386.       InContext provides many of the features of a "DOS shell", but it does
  387.       much more. InContext provides:
  388.  
  389.          o  Ability  to  associate  locations  in your directory space with
  390.             meaningful names and phrases, moving among commonly used direc-
  391.             tories with one or two keystrokes or a single mouse selection.
  392.  
  393.          o  Ability to easily home in on the right materials, selecting and
  394.             operating on a whole directory, a  user-defined  "View"  within
  395.             that directory, a specified type of file, or a single file.
  396.  
  397.          o  Object-oriented  behavior,  allowing you to point at a filename
  398.             or a group of files and select any of  several  operations  ap-
  399.             propriate  for  the  file  type.  These  operations  are easily
  400.             definable by the user, and are ABSOLUTELY NOT  limited  to  the
  401.             ordinary DOS operations and viewer invocations.
  402.  
  403.          o  Genuinely integrated planning and calendar functions. InContext
  404.             has  a  rather  nice  calendar function that allows you to keep
  405.             track of your appointments, to-do items, project work, etc.  It
  406.             includes  automatic  aging,  logging, repeating tasks, and many
  407.             other features of the better calendar  programs.  It  also  in-
  408.             cludes  basic  project management capabilities, including Gantt
  409.             charts, predecessor/successor tasks, floating tasks, and  auto-
  410.             mated error detection.
  411.  
  412.  
  413.    InContxt.DOC                       -2-                      January 1993
  414.  
  415.  
  416.  
  417.  
  418.    InContext User Guide                                            OVERVIEW
  419.  
  420.  
  421.             More important, though, the planning and calendar functions are
  422.             INTEGRATED  with  the  other functions of the work environment.
  423.             Thus, you can define a task that  you  do  every  Tuesday,  and
  424.             associate  it  with  particular  files,  and even actions, in a
  425.             particular directory. Noticing on your calendar that  the  task
  426.             is  on today's schedule, you can select it with a single opera-
  427.             tion, and find yourself actually doing the defined work. Incom-
  428.             plete work remains active  until  you  specify  otherwise,  and
  429.             completed work is logged for later reference.
  430.  
  431.  
  432.       InContext  has  many  other  useful features for helping you work (or
  433.       play) on your computer.
  434.  
  435.  
  436.    Here's What the Reviewers Say
  437.    -----------------------------
  438.  
  439.       "I suppose InContext could be called a DOS shell, file  manager,  and
  440.       time  planner,  since  it  provides many functions that are common to
  441.       each. Yet, it's probably unlike any other DOS  shell  you  have  ever
  442.       encountered. While DOS shells abound, this one has had an exceptional
  443.       amount  of  thought  and  planning  behind it... InContext provides a
  444.       refreshing new way to organize your computer work environment...  The
  445.       functions  are well integrated, which provides for very smooth opera-
  446.       tion. The manual is excellent, as is the hypertext  help  system  and
  447.       tutorial that are built into the program. The installation program is
  448.       a  model  of  what  all  authors should provide with their software."
  449.                               -- Steve Enzer, Alternative Software Bulletin
  450.  
  451.       "The program is different in concept, design and implementation  than
  452.       anything I've seen."                         -- Dennis Scarff, Public
  453.       Brand Systems
  454.  
  455.       "InContext  is  a  truly  flexible and worthwhile environment to work
  456.       within. A very impressive package."                          --  Mike
  457.       Gunderloy, Factsheet Five
  458.  
  459.  
  460.    System Requirements
  461.    -------------------
  462.  
  463.       The  InContext  Work Environment Manager runs on IBM XT, AT, 386, 486
  464.       or fully compatible computers. It supports MDA, CGA,  Hercules,  EGA,
  465.       MCGA,  and  VGA graphics adapters. It requires DOS 3.0 or above and a
  466.       hard disk. At least 512K of RAM  is  recommended,  though  less  will
  467.       suffice if appropriate configuration options are selected.
  468.  
  469.  
  470.  
  471.  
  472.    InContxt.DOC                       -3-                      January 1993
  473.  
  474.  
  475.  
  476.  
  477.    InContext User Guide                                            OVERVIEW
  478.  
  479.  
  480.    Registration Information
  481.    ------------------------
  482.  
  483.       InContext  is  a  shareware  program. This means that you can try the
  484.       program out for a reasonable period (30 days) before deciding whether
  485.       or not to buy it. It does not mean that the program is free  or  that
  486.       it  is in the public domain. Rams' Island Software owns the copyright
  487.       on this program, and reserves all rights in the program,  help  text,
  488.       user's manual, etc.
  489.  
  490.       Because  the  program  is  shareware, you have the opportunity to see
  491.       whether or not it satisfies your needs before you decide to invest in
  492.       it. We encourage you to fully explore the program, and even  to  call
  493.       us  for  support  if  it  will  help  you evaluate it. We do require,
  494.       though, that you register  and  pay  the  registration  fee  for  the
  495.       program  if  you  decide  to  continue  using it after the evaluation
  496.       period.
  497.  
  498.       Legalities and ethics aside, there are several  real  benefits  which
  499.       you  will  receive  when  you  register the program. Registered users
  500.       receive:
  501.  
  502.          o  Diskettes containing the latest version of InContext.
  503.  
  504.          o  Automatic mailing of the next version, without charge.
  505.  
  506.          o  A high-quality,  typeset  User  Guide,  with  many  full-screen
  507.             displays  and other graphics, and fully indexed. "InContext has
  508.             the best user manual I've seen  in  the  industry."  --  Dennis
  509.             Scarff, Product Reviewer, Public Brand Software
  510.  
  511.          o  A  Quick-Reference  card  outlining  the  various  commands and
  512.             features of InContext.
  513.  
  514.          o  Function-Key Templates for use with InContext.
  515.  
  516.          o  Additional support materials for handling a variety of applica-
  517.             tion programs.
  518.  
  519.          o  Product support by phone, BBS, CompuServe, electronic mail, and
  520.             regular mail for a minimum of  three  months  (current  policy,
  521.             though changeable, has no duration limit).
  522.  
  523.          o  Access  to the registered user section of our Rams' Island BBS.
  524.             This will allow you to exchange information with  other  regis-
  525.             tered  users  and  to gain easy access to the support materials
  526.             mentioned above.
  527.  
  528.          o  Announcements of updates, obtainable at reduced cost.
  529.  
  530.  
  531.    InContxt.DOC                       -4-                      January 1993
  532.  
  533.  
  534.  
  535.  
  536.    InContext User Guide                                            OVERVIEW
  537.  
  538.  
  539.          o  Occasional newsletters with tips about use  of  InContext,  an-
  540.             nouncements of upgrades, etc.
  541.  
  542.          o  Elimination  of  the  "shareware"  messages  displayed  by  the
  543.             program.
  544.  
  545.          o  Automatic conversion of InContext task and  configuration  data
  546.             when new versions are released.
  547.  
  548.          o  A  data-conversion  utility  to produce "Calendar Creator Plus"
  549.             output (versions 4.0 or 5.0) from plans information  maintained
  550.             in InContext. (Calendar Creator Plus produces beautiful printed
  551.             calendars,  "day-timer" sheets, etc.) Other such utilities will
  552.             be added as the opportunities arise, and made available  (free)
  553.             to registered users of InContext.
  554.  
  555.          o  Various  special  offers,  such  as  reduced rates on shareware
  556.             magazines and on other products.
  557.  
  558.  
  559.       See the file REGISTER.DOC for details about  ordering  InContext.  If
  560.       you  have  difficulty  finding that file, please contact us by any of
  561.       the means shown under "Technical Support", below.
  562.  
  563.  
  564.    Trial Use License
  565.    -----------------
  566.  
  567.       InContext is NOT a public domain program. It is copyrighted by  Rams'
  568.       Island  Software.  This  software  and accompanying documentation are
  569.       protected by United States Copyright law and  also  by  International
  570.       Treaty provisions.
  571.  
  572.       Rams'  Island  Software  grants  you  a  limited  license to use this
  573.       software for evaluation purposes for a period not  to  exceed  thirty
  574.       days.  If  you  continue  using  this  software  after the thirty-day
  575.       evaluation period, you MUST make  a  registration  payment  to  Rams'
  576.       Island Software.
  577.  
  578.       Individuals may give copies of the shareware (NOT registered) version
  579.       of  this  program  to friends or upload it to Bulletin Board Systems.
  580.       This may be done for the purpose of evaluation  only,  and  does  not
  581.       convey  to  the recipient any rights other than those described here.
  582.       If you distribute such copies,  you  must  include  the  entire,  un-
  583.       modified  package,  as  distributed  by  Rams'  Island  Software (see
  584.       PACKING.LST). You may not receive  any  compensation  in  return,  or
  585.       include  this  package  with any other hardware or software for which
  586.       you do receive compensation. Any other distribution must  conform  to
  587.       the terms described in VENDOR.DOC.
  588.  
  589.  
  590.    InContxt.DOC                       -5-                      January 1993
  591.  
  592.  
  593.  
  594.  
  595.    InContext User Guide                                            OVERVIEW
  596.  
  597.  
  598.            (BBS  Sysops,  User  Groups,  Computer  Clubs,  Disk Vendors and
  599.            Distributors, Subscription  Services,  Disk-of-the-Month  Clubs,
  600.            Dealers,  Consultants, Value-Added Resellers, etc., should refer
  601.            to the VENDOR.DOC file  for  complete  information  relating  to
  602.            them.)
  603.  
  604.       You  may  not use, copy, rent, lease, sell, modify, decompile, disas-
  605.       semble, otherwise reverse engineer, or transfer this program  or  its
  606.       documentation  except  as  provided  in  this agreement. Any such un-
  607.       authorized use shall result in immediate and automatic termination of
  608.       this license.
  609.  
  610.       All rights not expressly granted here are reserved  to  Rams'  Island
  611.       Software.
  612.  
  613.       U.S.  Government  Information: Use, duplication, or disclosure by the
  614.       U.S. Government of the computer software and  documentation  in  this
  615.       package  shall  be  subject  to  the  restricted rights applicable to
  616.       commercial computer software as set forth in  subdivision  (b)(3)(ii)
  617.       of  the  Rights  in  Technical  Data  and Computer Software clause at
  618.       252.227-7013 (DFARS 52.227-7013). The Contractor/manufacturer is
  619.          Rams' Island Software
  620.          7644 Lakecliff
  621.          Parker, CO 80134-5904
  622.          (303) 841-2848
  623.  
  624.  
  625.    Limited Warranty
  626.    ----------------
  627.  
  628.       THIS SOFTWARE AND MANUAL ARE PROVIDED FOR EVALUATION ONLY, ON AN  "AS
  629.       IS" BASIS. RAMS' ISLAND SOFTWARE DISCLAIMS ALL WARRANTIES RELATING TO
  630.       THIS  SOFTWARE,  WHETHER  EXPRESSED  OR  IMPLIED,  INCLUDING  BUT NOT
  631.       LIMITED TO ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A
  632.       PARTICULAR PURPOSE. NEITHER RAMS' ISLAND SOFTWARE NOR ANYONE ELSE WHO
  633.       HAS BEEN INVOLVED IN THE CREATION, PRODUCTION, OR  DELIVERY  OF  THIS
  634.       SOFTWARE SHALL BE LIABLE FOR ANY INDIRECT, CONSEQUENTIAL, OR INCIDEN-
  635.       TAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE SUCH SOFTWARE,
  636.       EVEN  IF RAMS' ISLAND SOFTWARE HAS BEEN ADVISED OF THE POSSIBILITY OF
  637.       SUCH DAMAGES OR CLAIMS. THE PERSON USING THE SOFTWARE BEARS ALL  RISK
  638.       AS TO THE QUALITY AND PERFORMANCE OF THE SOFTWARE.
  639.  
  640.       This agreement shall be governed by the laws of the State of Colorado
  641.       and  shall  inure  to  the  benefit  of Rams' Island Software and any
  642.       successors, administrators, heirs and assigns. Any action or proceed-
  643.       ing brought by either party against  the  other  arising  out  of  or
  644.       related to this agreement shall be brought only in a STATE or FEDERAL
  645.       COURT  of competent jurisdiction located in Douglas County, Colorado.
  646.       The parties hereby  consent  to  in  personam  jurisdiction  of  said
  647.  
  648.  
  649.    InContxt.DOC                       -6-                      January 1993
  650.  
  651.  
  652.  
  653.  
  654.    InContext User Guide                                            OVERVIEW
  655.  
  656.  
  657.       courts.
  658.  
  659.  
  660.    Technical Support
  661.    -----------------
  662.  
  663.       Rams'  Island  Software  is  committed  to the active support of this
  664.       product. While we try very hard to  make  our  software  useable  and
  665.       reliable,  there  will  undoubtedly  be  cases  in which a user needs
  666.       special   help   because   of   difficulties    with    the    user's
  667.       hardware/software  environment  or  bugs  in  the  software. On those
  668.       occasions, we'll try to help.
  669.  
  670.       If you have a problem with installation or use of this  product,  and
  671.       the  documentation doesn't provide the help you need, you are welcome
  672.       to contact us. You can do this any  of  several  ways,  as  described
  673.       below.  We  prefer  support  via BBS or electronic mail, as it allows
  674.       both you and us to communicate at convenient times regardless of time
  675.       zones and work schedules, and it provides a record of the  communica-
  676.       tion.  However,  telephone  support  is  also  provided,  should that
  677.       satisfy your needs better.
  678.  
  679.  
  680.       Rams' Island BBS
  681.       ----------------
  682.       The Rams' Island BBS is a bulletin board system, accessible to you if
  683.       if you have a modem and communication software. On our BBS, you  will
  684.       always  find  the latest version of the program, and you will be able
  685.       to ask technical questions of us and of  our  other  users.  We  also
  686.       offer additional utilities, class definitions, application notes, and
  687.       other  assistance  to  registered  users  via  the BBS. The BBS phone
  688.       number is 303-841-6269.
  689.  
  690.  
  691.       CompuServe Information System
  692.       -----------------------------
  693.       We also support this product on the  CompuServe  information  system.
  694.       The  latest  version  of the program is always available there on the
  695.       IBMSYS forum, and technical questions and  support  requests  may  be
  696.       sent  to  us via electronic mail there or on the CompuServe SHAREWARE
  697.       and UKSHARE forums. Our CompuServe user ID is 76244,324.
  698.  
  699.  
  700.       Voice Telephone
  701.       ---------------
  702.       You may reach us by voice telephone at 303-841-2848. The best time to
  703.       call is on Monday through Friday between 9:00  A.M.  and  3:00  P.M.,
  704.       Mountain  Time.  We  will respond to telephone messages as quickly as
  705.       possible, but may require 48 hours or more depending on the  workload
  706.  
  707.  
  708.    InContxt.DOC                       -7-                      January 1993
  709.  
  710.  
  711.  
  712.  
  713.    InContext User Guide                                            OVERVIEW
  714.  
  715.  
  716.       and the timing of your call.
  717.  
  718.  
  719.       Mail
  720.       ----
  721.       You  may contact us by mail at Rams' Island Software, 7644 Lakecliff,
  722.       Parker, Colorado 80134-5904.
  723.  
  724.  
  725.  
  726.  
  727.  
  728.  
  729.  
  730.  
  731.  
  732.  
  733.  
  734.  
  735.  
  736.  
  737.  
  738.  
  739.  
  740.  
  741.  
  742.  
  743.  
  744.  
  745.  
  746.  
  747.  
  748.  
  749.  
  750.  
  751.  
  752.  
  753.  
  754.  
  755.  
  756.  
  757.  
  758.  
  759.  
  760.  
  761.  
  762.  
  763.  
  764.  
  765.  
  766.  
  767.    InContxt.DOC                       -8-                      January 1993
  768.  
  769.  
  770.  
  771.  
  772.    InContext User Guide                                            OVERVIEW
  773.  
  774.  
  775.    Association of Shareware Professionals
  776.    --------------------------------------
  777.  
  778.       H. Rudy Ramsey and Rams' Island Software are members of the  Associa-
  779.       tion  of  Shareware Professionals (ASP). ASP was formed in April 1987
  780.       to strengthen shareware as a method  of  marketing  and  distributing
  781.       software  without  the attendant high marketing costs common in "com-
  782.       mercial" software. The members of ASP are, as a condition of  member-
  783.       ship,  committed  to  a code of ethics and a set of shareware quality
  784.       standards. Rams' Island Software is fully committed to  those  stand-
  785.       ards.
  786.  
  787.         %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  788.         %                                                                %
  789.         %                 ASP Ombudsman Information                      %
  790.         %                                                                %
  791.         %  Rams' Island Software is a member of the Association of       %
  792.         %  Shareware Professionals (ASP).  ASP wants to make sure that   %
  793.         %  the shareware principle works for you.  If you are unable     %
  794.         %  to resolve a shareware-related problem with an ASP member     %
  795.         %  by contacting the member directly, ASP may be able to help.   %
  796.         %  The ASP ombudsman can help you resolve a dispute or problem   %
  797.         %  with an ASP member, but does not provide technical support    %
  798.         %  for members' products.  Please write to the ASP Ombudsman at: %
  799.         %     ASP Ombudsman                  _______                     %
  800.         %     545 Grover Road           ____|__     |                (R) %
  801.         %     Muskegon, MI           --|       |    |------------------- %
  802.         %        49442-9427 (USA)      |   ____|__  |  Association of    %
  803.         %  or send a Compuserve        |  |       |_|  Shareware         %
  804.         %  message via CompuServe      |__|   o   |    Professionals     %
  805.         %  mail to 70475,1071, or    -----|   |   |--------------------- %
  806.         %  a FAX to 616-788-2765.         |___|___|    MEMBER            %
  807.         %                                                                %
  808.         %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  809.  
  810.  
  811.  
  812.  
  813.  
  814.  
  815.  
  816.  
  817.  
  818.  
  819.  
  820.  
  821.  
  822.  
  823.  
  824.  
  825.  
  826.    InContxt.DOC                       -9-                      January 1993
  827.  
  828.  
  829.  
  830.  
  831.    InContext User Guide                              INSTALLATION AND SETUP
  832.  
  833.  
  834.        
  835.                           +------------------------+
  836.                           | INSTALLATION AND SETUP |
  837.                           +------------------------+
  838.  
  839.  
  840.  
  841.    Quick Start
  842.    -----------
  843.  
  844.       If  you're the type of person who likes to just fire up a program and
  845.       try it, rather than reading the manual, it is suggested that  you  do
  846.       the following steps, in the order given:
  847.  
  848.          o  Install  the program, following the instructions in the rest of
  849.             this chapter.
  850.  
  851.          o  Run the program, using the command "inc".  Note  that,  if  you
  852.             chose  an  installation directory other than "C:\INCONTXT", you
  853.             must add the full pathname  of  that  directory  to  the  "inc"
  854.             command line. An example is "inc d:\myplace".
  855.  
  856.          o  Make liberal use of the F1 ("Help") key. In particular, try the
  857.             tutorial  (type "H" or F1 for help, and then "T" for tutorial).
  858.             If you're the "quick start" type, you might want to  just  skim
  859.             the materials covered in the tutorial.
  860.  
  861.  
  862.       You  may  find  that  you  can  do quite a bit without consulting the
  863.       manual further, or reading the help  text  seriously.  As  with  most
  864.       programs,  though,  a  little  time spent reading the manual or going
  865.       through the tutorial will almost certainly reward you well. InContext
  866.       is a program that can be approached  at  many  levels.  Its  simplest
  867.       functions  are  available  to  the  novice  user with little study or
  868.       effort. Its most sophisticated functions will require effort on  your
  869.       part, but will yield substantial power and flexibility in return.
  870.  
  871.  
  872.    How to Install and Start the Program
  873.    ------------------------------------
  874.  
  875.       The installation procedure for InContext is quite simple. The package
  876.       includes   a  program,  "INSTALL.EXE",  which  automates  the  entire
  877.       process. You will need about 1M of available disk space on  the  hard
  878.       drive  on  which  you plan to install InContext. During and after the
  879.       installation, you can implement  space-saving  measures  to  substan-
  880.       tially  reduce the amount of continuing disk space used by InContext,
  881.       if you like.
  882.  
  883.  
  884.  
  885.    InContxt.DOC                      -10-                      January 1993
  886.  
  887.  
  888.  
  889.  
  890.    InContext User Guide                              INSTALLATION AND SETUP
  891.  
  892.  
  893.       The exact steps you need to take will  depend  on  how  you  received
  894.       InContext.
  895.  
  896.  
  897.       Installing from Diskette(s)
  898.       ---------------------------
  899.       To install from diskette(s), you need to perform the following steps.
  900.  
  901.          o  Place  InContext  distribution  diskette  "Disk  1"  in the ap-
  902.             propriate diskette drive.
  903.  
  904.          o  Execute the "INSTALL.EXE" program on the distribution diskette.
  905.             For example, if the distribution diskette is on drive A:,  type
  906.             the MS-DOS command, "a:install".
  907.  
  908.          o  Follow  the instructions presented by the installation program.
  909.             You will have a  chance  to  approve  installation  before  any
  910.             changes  are  actually made to the contents of your hard drive.
  911.             The program will ask you for a destination directory, and  will
  912.             copy  the  InContext  files  to that directory. If you received
  913.             InContext on two diskettes, you will need to insert Disk  2  in
  914.             the  diskette  drive  when asked to do so. If you so direct it,
  915.             the installation program will install executable  programs  and
  916.             documentation in other directories of your choice. It will make
  917.             no  other  changes;  specifically,  it  will  not  modify  your
  918.             autoexec.bat or config.sys files.
  919.  
  920.          o  Make sure all the executable programs you've  unpacked  are  in
  921.             your  path.  If  you chose to move the executable programs to a
  922.             directory that is already on your path, no  special  action  is
  923.             required.  If you left the executables in the InContext instal-
  924.             lation directory, you should add that directory  to  your  path
  925.             and reboot the computer.
  926.  
  927.  
  928.  
  929.       Installing from a Hard Drive
  930.       ----------------------------
  931.       If you downloaded InContext from a BBS (or received it in the form of
  932.       archive  files  from some other source), you will need to perform the
  933.       following steps.
  934.  
  935.          o  Extract the contents of the  archive  file(s)  in  a  temporary
  936.             directory  on  your  hard  drive.  The procedure for doing this
  937.             varies, depending  on  the  form  in  which  you  received  the
  938.             package.  In all likelihood, the fact that you are reading this
  939.             text means that  you  already  have  the  necessary  tools  and
  940.             knowledge  to  perform this step. If not, you should be able to
  941.             obtain directions for this from the same source from which  you
  942.  
  943.  
  944.    InContxt.DOC                      -11-                      January 1993
  945.  
  946.  
  947.  
  948.  
  949.    InContext User Guide                              INSTALLATION AND SETUP
  950.  
  951.  
  952.             received the package.
  953.  
  954.          o  Execute the "INSTALL.EXE" program which you have extracted. For
  955.             example,  if  the  temporary  directory into which you have ex-
  956.             tracted the InContext package is C:\TEMPDIR, you would  execute
  957.             the MS-DOS command, "c:\tempdir\install".
  958.  
  959.          o  Follow  the instructions presented by the installation program.
  960.             You will have a  chance  to  approve  installation  before  any
  961.             changes  are  actually made to the contents of your hard drive.
  962.             The program will ask you for a destination directory, and  will
  963.             copy  the  InContext  files to that directory. If you so direct
  964.             it, the installation program will install  executable  programs
  965.             and  documentation in other directories of your choice. It will
  966.             make no other changes; specifically, it will  not  modify  your
  967.             autoexec.bat or config.sys files.
  968.  
  969.          o  Make  sure  all  the executable programs you've unpacked are in
  970.             your path. If you chose to move the executable  programs  to  a
  971.             directory  that  is  already on your path, no special action is
  972.             required. If you left the executables in the InContext  instal-
  973.             lation  directory,  you  should add that directory to your path
  974.             and reboot the computer.
  975.  
  976.          o  When you're satisfied that the installation was successful, you
  977.             should delete the temporary directory FROM which you  installed
  978.             InContext  (C:\TEMPDIR, in the above discussion), including all
  979.             its contents.
  980.  
  981.  
  982.  
  983.    How to Start InContext
  984.    ----------------------
  985.  
  986.       You're ready to go. Start InContext with  the  command,  "inc"  (this
  987.       invokes  the  batch  file, "INC.BAT"). Note that, if you chose an in-
  988.       stallation directory other than "C:\INCONTXT", you must add the  full
  989.       pathname  of  that directory to the "inc" command line. An example is
  990.       "inc d:\myplace".
  991.  
  992.       Two command-line switches are available to  help  in  special  situa-
  993.       tions.  To  suppress  use of a mouse driver, add "-nm" to the command
  994.       line, as in "inc -nm".
  995.  
  996.       To suppress initial disk logging, add "-nd", as in  "inc  -nd".  This
  997.       should  be  necessary  only in unusual circumstances, such as a drive
  998.       with thousands of directories, or a system with severely limited RAM.
  999.       Even in these cases, after you have set your  options  appropriately,
  1000.       you should no longer need this switch.
  1001.  
  1002.  
  1003.    InContxt.DOC                      -12-                      January 1993
  1004.  
  1005.  
  1006.  
  1007.  
  1008.    InContext User Guide                              INSTALLATION AND SETUP
  1009.  
  1010.  
  1011.    What There Is, and Where
  1012.    ------------------------
  1013.  
  1014.       The  behavior  of InContext is controlled by the objects in a special
  1015.       directory  devoted  to  that  purpose.  This  directory  is   usually
  1016.       "C:\INCONTXT",  but  it  can  be any directory of your choice. In any
  1017.       case, it should be a  separate  directory,  not  including  materials
  1018.       unrelated to InContext.
  1019.  
  1020.       This directory initially contains:
  1021.  
  1022.          o  A number of documentation files, with filename extension "doc".
  1023.             You may choose to print these or read them on-line. They may be
  1024.             deleted from the disk, when you're finished with them.
  1025.  
  1026.          o  A  set  of  "action  definition" files, with filename extension
  1027.             "act". These files may be compressed  together  in  an  archive
  1028.             file,  "actions.lzh".  This  would reduce disk usage, but would
  1029.             result in a delay each time one is needed.
  1030.  
  1031.          o  A set of "template" files, with filename extension "tpl". These
  1032.             files  may  be  compressed  together  in   an   archive   file,
  1033.             "template.lzh".  This would reduce disk usage, but would result
  1034.             in a delay each time one is needed.
  1035.  
  1036.          o  A set of "help" files, with  filename  extension  "hlp".  These
  1037.             files   may   be   compressed  together  in  an  archive  file,
  1038.             "help.lzh". This would reduce disk usage, but would result in a
  1039.             delay each time one is needed.
  1040.  
  1041.          o  A file that defines object "views" (xxxviews.dic).
  1042.  
  1043.          o  The  program  files   themselves,   including   "incontxt.exe",
  1044.             "inc.bat", and "errmsg.dat". The public-domain archive program,
  1045.             "lha.exe", may also be here.
  1046.  
  1047.          o  An archived collection of "application notes" ("appnotes.lzh").
  1048.             See the next section for more information.
  1049.  
  1050.  
  1051.       In  addition,  the following files may be created during execution of
  1052.       InContext.
  1053.  
  1054.          o  A configuration  file  (xxxconfg.dat),  containing  information
  1055.             about the user and the user's preferences.
  1056.  
  1057.          o  A plans file (xxxplans.dat) containing information on tasks and
  1058.             calendar entries you have defined.
  1059.  
  1060.  
  1061.  
  1062.    InContxt.DOC                      -13-                      January 1993
  1063.  
  1064.  
  1065.  
  1066.  
  1067.    InContext User Guide                              INSTALLATION AND SETUP
  1068.  
  1069.  
  1070.          o  A  set of log files, with filename extension "log". These files
  1071.             represent completed tasks.
  1072.  
  1073.          o  A set of task notes files, with filename extension "not".
  1074.  
  1075.          o  A  file  that  controls  the  next-assigned  task  note  number
  1076.             (nextnote.dat).
  1077.  
  1078.          o  A  file  that defines special procedures you want to be able to
  1079.             execute easily (xxxdofil.dic).
  1080.  
  1081.          o  A file that defines special directories you want to be able  to
  1082.             get to easily (xxxgofil.dic).
  1083.  
  1084.  
  1085.  
  1086.    Application Notes
  1087.    -----------------
  1088.  
  1089.       The archive file "appnotes.lzh" contains a set of "Application Notes"
  1090.       about  supporting  various  applications or object classes, or making
  1091.       use of other programs as tools. Each application note  is  itself  an
  1092.       LHA  archive  with  the  filename extension, "app". You should take a
  1093.       look at these after you've become familiar with InContext. To look at
  1094.       one, simply extract it from the appnotes archive and  then  edit  it.
  1095.       These  instructions  may not be clear if you're not yet familiar with
  1096.       InContext.
  1097.  
  1098.       The appnotes archive provided with InContext is a  starter  set,  in-
  1099.       tended  to  convey  the idea. Others are provided with the registered
  1100.       version of InContext, and are available on our  BBS.  As  a  user  of
  1101.       InContext,  you  may  choose  to contribute to our store of supported
  1102.       applications, by preparing an  application  note  for  a  program  or
  1103.       object type in which you have a special interest.
  1104.  
  1105.  
  1106.  
  1107.  
  1108.  
  1109.  
  1110.  
  1111.  
  1112.  
  1113.  
  1114.  
  1115.  
  1116.  
  1117.  
  1118.  
  1119.  
  1120.  
  1121.    InContxt.DOC                      -14-                      January 1993
  1122.  
  1123.  
  1124.  
  1125.  
  1126.    InContext User Guide                             PHILOSOPHY OF INCONTEXT
  1127.  
  1128.  
  1129.        
  1130.                           +-------------------------+
  1131.                           | PHILOSOPHY OF INCONTEXT |
  1132.                           +-------------------------+
  1133.  
  1134.  
  1135.  
  1136.    What is InContext?
  1137.    ------------------
  1138.  
  1139.       The  InContext(TM) Work Environment Manager is an integrated software
  1140.       package which includes:
  1141.  
  1142.           1. Directory and file management.
  1143.  
  1144.           2. Menu generation and management.
  1145.  
  1146.           3. Object-oriented behavior, rarely seen under MS-DOS.
  1147.  
  1148.           4. Task planning and project management capability.
  1149.  
  1150.           5. Calendar management, display, and printing.
  1151.  
  1152.       You have undoubtedly seen individual tools that address most of these
  1153.       areas. InContext provides  excellent  capability  in  each  of  these
  1154.       areas,  and might very well become your program of choice even if you
  1155.       make use of only one or two. Its real power, though, comes  from  its
  1156.       smooth integration of these various capabilities.
  1157.  
  1158.  
  1159.    Why Integration?
  1160.    ----------------
  1161.  
  1162.       When  you  work  (or play), you deal with space, time, plans, and ob-
  1163.       jects. They provide the context in which you work.  In  the  physical
  1164.       world,  you deal with these things very naturally, often without even
  1165.       noticing them. They are well integrated, and you  move  smoothly  and
  1166.       freely  from  one  to  another.  This  is not true when you work with
  1167.       computers, though. The tools that support planning, file  management,
  1168.       and menu execution have been largely independent, dissimilar, and not
  1169.       easy to use together.
  1170.  
  1171.       The  InContext  Work Environment Manager provides integrated computer
  1172.       support for these and other aspects of work. The effect is  to  allow
  1173.       you to manage your calendar, manage your files and disk space, create
  1174.       and  execute  plans, and perform unplanned work on your computer, all
  1175.       with the aid of a program that "understands" how these things  relate
  1176.       to one another.
  1177.  
  1178.  
  1179.  
  1180.    InContxt.DOC                      -15-                      January 1993
  1181.  
  1182.  
  1183.  
  1184.  
  1185.    InContext User Guide                             PHILOSOPHY OF INCONTEXT
  1186.  
  1187.  
  1188.    Space
  1189.    -----
  1190.  
  1191.       When  you  work  on  a  computer, the "space" in which your tools and
  1192.       materials are organized consists of directories on your disks. InCon-
  1193.       text allows you to move around this space, using a tree-like  graphi-
  1194.       cal  display  of  the  sort  you may have seen in "hard-disk manager"
  1195.       programs. But it provides much more.
  1196.  
  1197.       InContext will make it easy for you to organize your directories in a
  1198.       way that truly supports your work.  Directories  in  which  you  fre-
  1199.       quently  work  can  be given meaningful names, and you can move among
  1200.       them with one or two keystrokes or  a  single  mouse  selection.  The
  1201.       ability  to  concentrate  on these "work" places, and to carry things
  1202.       with you as you move around, give InContext a natural spatial charac-
  1203.       ter.
  1204.  
  1205.  
  1206.    Time
  1207.    ----
  1208.  
  1209.       Your work also occurs in a time context. You may have an  appointment
  1210.       at 2:30, a deadline tomorrow, a bill due the 20th of every month, and
  1211.       a small project which you expect to be working on from next Wednesday
  1212.       until  the  following  Tuesday.  Simple  calendars -- either paper or
  1213.       electronic -- can certainly help you organize your activities. But if
  1214.       you do a lot of your work on your computer, real power can be  gained
  1215.       from integrating time with both planning and working tools.
  1216.  
  1217.       InContext  allows  you  to  keep an ordinary electronic calendar with
  1218.       appointments, birthdays, meetings, etc. It also allows  you  to  plan
  1219.       your activities (see below). It then uses this information to present
  1220.       various "time views", such as:
  1221.  
  1222.           1. "Things  to  Do  Today", including both scheduled appointments
  1223.              and action items.
  1224.  
  1225.           2. A calendar for March
  1226.  
  1227.           3. A log of tasks completed and appointments kept last week.
  1228.  
  1229.  
  1230.  
  1231.    Plans
  1232.    -----
  1233.  
  1234.       When you work, you also create and  execute  "plans".  Plans  can  be
  1235.       informal  ("around  5:30,  I'm  going  to start fixing supper"), very
  1236.       formal, or anything in between. They may  not  even  specify  a  time
  1237.  
  1238.  
  1239.    InContxt.DOC                      -16-                      January 1993
  1240.  
  1241.  
  1242.  
  1243.  
  1244.    InContext User Guide                             PHILOSOPHY OF INCONTEXT
  1245.  
  1246.  
  1247.       ("build  a  bookshelf"). Plans often have a hierarchic structure, and
  1248.       this has led to many "outline"-style planning tools.
  1249.  
  1250.       You don't have to build any plans in order to make effective  use  of
  1251.       InContext.  But  InContext  allows  you  to easily construct plans of
  1252.       widely varying formality. More important, it  integrates  your  plans
  1253.       with  your calendar, and even with the execution of any work that you
  1254.       perform on your computer (see "Activities", below).
  1255.  
  1256.  
  1257.    Procedures
  1258.    ----------
  1259.  
  1260.       A procedure is just a series of steps, like a  recipe.  You  probably
  1261.       have  many  procedures  that you execute frequently. Perhaps you have
  1262.       built DOS batch files to help you execute procedures  without  having
  1263.       to  remember  and manually key in the commands over and over. Perhaps
  1264.       you even use a menu tool to make this easier.
  1265.  
  1266.       InContext allows you to define procedures easily. It  allows  you  to
  1267.       invoke  the  procedures  much  more  easily,  often  with  one or two
  1268.       keystrokes or a single mouse selection. It  also  lets  you  interact
  1269.       more with the procedure during its execution.
  1270.  
  1271.  
  1272.    Objects, Classes, and Actions
  1273.    -----------------------------
  1274.  
  1275.       In  the  ordinary,  physical  world,  objects and their behaviors are
  1276.       closely tied. To "drink from a coffee cup", or to "write with a pen",
  1277.       you don't have to remember artificial associations; you just  perform
  1278.       the  actions.  In  the electronic domain, the "objects" are files, or
  1279.       sets of files. In using the computer, though, you frequently have  to
  1280.       remember things like "to edit the document, I type 'b mydoc.txt', and
  1281.       to print it, I type 'wordix -dhplaser mydoc.txt'".
  1282.  
  1283.       In  InContext, simply pointing at an object causes a list of relevant
  1284.       actions to appear, and  selecting  one  causes  its  execution.  This
  1285.       results in much more fluid interaction with the computer, and is much
  1286.       less  demanding  of  the user, even though the user is still in total
  1287.       control. Because you can easily extend the defined actions to provide
  1288.       specialized behavior for different object "classes"  and  to  include
  1289.       very  sophisticated  operations,  this style of interaction works for
  1290.       sophisticated users, as well as for novices.
  1291.  
  1292.  
  1293.  
  1294.  
  1295.  
  1296.  
  1297.  
  1298.    InContxt.DOC                      -17-                      January 1993
  1299.  
  1300.  
  1301.  
  1302.  
  1303.    InContext User Guide                             PHILOSOPHY OF INCONTEXT
  1304.  
  1305.  
  1306.    Activities
  1307.    ----------
  1308.  
  1309.       The real point of all this, though, is to make it easy to do the work
  1310.       itself. By selecting a single item in your plan or calendar, you  may
  1311.       find  yourself  automatically  switched into the correct spatial con-
  1312.       text, and focussed on the right object or object set. If appropriate,
  1313.       a specific procedure may even be executed automatically. If, in doing
  1314.       this, you complete the planned activity, your calendar and plan  will
  1315.       be  appropriately  updated.  Almost  as  much  power is available for
  1316.       performing  unplanned  work.  You  may  even  find  your  concept  of
  1317.       computer-supported "work" changed.
  1318.  
  1319.       InContext  has  a  rich  help and on-line tutorial system. With addi-
  1320.       tional special features for  handling  multiple  contexts,  interrup-
  1321.       tions,  encapsulation  of  other  programs, etc., InContext is a very
  1322.       complete "Work Environment Manager".
  1323.  
  1324.  
  1325.  
  1326.  
  1327.  
  1328.  
  1329.  
  1330.  
  1331.  
  1332.  
  1333.  
  1334.  
  1335.  
  1336.  
  1337.  
  1338.  
  1339.  
  1340.  
  1341.  
  1342.  
  1343.  
  1344.  
  1345.  
  1346.  
  1347.  
  1348.  
  1349.  
  1350.  
  1351.  
  1352.  
  1353.  
  1354.  
  1355.  
  1356.  
  1357.    InContxt.DOC                      -18-                      January 1993
  1358.  
  1359.  
  1360.  
  1361.  
  1362.    InContext User Guide                          INTERACTING WITH INCONTEXT
  1363.  
  1364.  
  1365.        
  1366.                         +----------------------------+
  1367.                         | INTERACTING WITH INCONTEXT |
  1368.                         +----------------------------+
  1369.  
  1370.  
  1371.  
  1372.    How Screen Displays Will Be Shown in this User Guide
  1373.    ----------------------------------------------------
  1374.  
  1375.       The figure below shows a sample portion of an InContext  screen  dis-
  1376.       play.  The actual displays of InContext use several colors or bright-
  1377.       ness levels to help differentiate information and  to  help  separate
  1378.       screen  areas. They also use the PC graphical character set, which is
  1379.       much more effective at drawing windows than the normal ASCII  charac-
  1380.       ter  set.  Unfortunately,  this on-disk User Guide must be written in
  1381.       normal ASCII characters in order to allow you to print  it,  even  if
  1382.       your  printer  doesn't support colors or the PC graphical characters.
  1383.       It is extremely difficult to do justice to the actual displays  while
  1384.       restricting the document to these printable characters.
  1385.  
  1386.            %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  1387.            %                                                           %
  1388.            %                    |                                   |  %
  1389.            %   Hours     WiP    |  Views  Class   Objects   Actions |  %
  1390.            %   6 ....           | ALL      ALL copyrite.txt Edit    |  %
  1391.            %   7 ....           | Archive  apt  history.txt View    |  %
  1392.            %   8 ....           | Chess    doc introasc.txt Archive |  %
  1393.            %   9 ....           | Document fmt  pctutil.txt Bedit   |  %
  1394.            %  10 ....           |                             py    |  %
  1395.            %  11 ....   ==Is=it=OK=to=delete="picture.txt"?==  ete  |  %
  1396.            %  12p....   | No #                              |  t    |  %
  1397.            %   1 .ddd   | Yes                               |  ame  |  %
  1398.            %   2 dddd   +-----------------------------------+  e    |  %
  1399.            %   3 dddd           |                             ort   |  %
  1400.            %   4 dddd           | Programs wdx              4print  |  %
  1401.            %   5 dddd           | Source                    Print   |  %
  1402.            %                                                           %
  1403.            %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  1404.  
  1405.       Accordingly,  it  has  been necessary to take some liberties with the
  1406.       displays, sometimes changing characters, or deleting them altogether,
  1407.       in order to help you understand the structure of the displays. In the
  1408.       example above, a small pop-up window is shown, asking  the  question,
  1409.       "Is  it  OK to delete 'picture.txt'?" The top line of the window, and
  1410.       the box on its other three sides, are normally a different color,  to
  1411.       help  set  them  off  from the rest of the display. The effect of the
  1412.       window is suggested here by using "=" characters across the top line,
  1413.       drawing the other three sides with "|" and "-" characters, and clear-
  1414.  
  1415.  
  1416.    InContxt.DOC                      -19-                      January 1993
  1417.  
  1418.  
  1419.  
  1420.  
  1421.    InContext User Guide                          INTERACTING WITH INCONTEXT
  1422.  
  1423.  
  1424.       ing out most of the surrounding area so it stands out.  Incidentally,
  1425.       the "#" character represents the current position of the cursor.
  1426.  
  1427.       These  conventions  are  artificial, but seem to be about the best we
  1428.       can do with this limited medium. You might well find the on-line help
  1429.       system and tutorial more effective, but we've  provided  this  manual
  1430.       for  those  who  prefer this format. For your information, though, we
  1431.       believe our on-line help system to be among the best in the industry.
  1432.       It might be worth your trouble to take a look at it before continuing
  1433.       to use this manual. The same information, essentially,  is  presented
  1434.       in  the  help  system  as in this User Guide. Another alternative, of
  1435.       course, is to register InContext and use  the  hardcopy  User  Guide,
  1436.       which has much more effective screen displays and other graphics. Our
  1437.       money-back guarantee makes that a risk-free approach.
  1438.  
  1439.  
  1440.    The Main Display
  1441.    ----------------
  1442.  
  1443.       The  figure  below shows the upper-left portion of the InContext dis-
  1444.       play.
  1445.  
  1446.       %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  1447.       %                                                                   %
  1448.       %   Dir: Alice Ramsey Personal Center -- ALICE                      %
  1449.       %   Drive: C   View: Document  Class: doc   Object: afhsmin.doc     %
  1450.       %  =Space==Time==Plans==WiP====View==Class==Object==Action====Go==  %
  1451.       %  |                            |                                   %
  1452.       %  | Today     Hours     WiP    |  Views  Class   Objects   Action  %
  1453.       %  | new age  12a....           | ALL      ALL  admnnot.doc Edit    %
  1454.       %  |*apps====  1 ....           | Archive  apt  afhsmin.doc View    %
  1455.       %  |*docs====  2 ....           | Chess    doc  afhsnot#doc Archiv  %
  1456.       %  |*help====  3 ....           | Document fmt   bksale.doc Bedit   %
  1457.       %                                                                   %
  1458.       %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  1459.  
  1460.       The InContext display has four main areas. You can  see  portions  of
  1461.       the top three in the figure.
  1462.  
  1463.          o  The  Context Area consists of the top two lines of the display.
  1464.             It shows where you are in space, the current date and time, and
  1465.             the materials and task you're currently focussing on.
  1466.  
  1467.          o  The Command Bar, the third line of the display, shows the  main
  1468.             commands  that  can  be selected. In the figure, these commands
  1469.             are "Space", "Time", "Plans", etc.
  1470.  
  1471.          o  The Status Line is the bottom line of the display. It shows, at
  1472.             various times, what InContext expects you to do, what  activity
  1473.  
  1474.  
  1475.    InContxt.DOC                      -20-                      January 1993
  1476.  
  1477.  
  1478.  
  1479.  
  1480.    InContext User Guide                          INTERACTING WITH INCONTEXT
  1481.  
  1482.  
  1483.             context  you're  in, brief help statements, and error messages.
  1484.             This line is not visible in the figure above.
  1485.  
  1486.          o  All the rest of the Main Display is the Main Window.  The  con-
  1487.             tents of this window are determined by your preferred operating
  1488.             style,   but  it  generally  includes  brief  lists  of  tasks,
  1489.             scheduled activities, objects, actions, procedures, and  direc-
  1490.             tories  you  may wish to select. If the figure seems too "busy"
  1491.             for your taste, keep in mind that YOU get to decide what infor-
  1492.             mation is displayed here.
  1493.  
  1494.  
  1495.  
  1496.    Other Displays
  1497.    --------------
  1498.  
  1499.       When appropriate, other displays pop up over the Main  Display.  When
  1500.       this  happens,  the new display will either appear to be lying on top
  1501.       of the Main Display (a "pop-up" window), or the new information  will
  1502.       temporarily  replace  the  information  in the Main Window. When such
  1503.       displays appear, additional instructions or status  information  will
  1504.       also be visible on the Status Line at the bottom of the screen.
  1505.  
  1506.           %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  1507.           %                                                              %
  1508.           %   Dir: Alice Ramsey Personal Center -- ALICE                 %
  1509.           %   Drive: C   View: Document  Class: doc   Object: afhsmin.d  %
  1510.           %  =Space=(Tree=Mode)=====                                     %
  1511.           %  ======================================Modes:=@Tree=@Name=@  %
  1512.           %  |     Directory                    Brief Name   Your Descr  %
  1513.           %  | C:                                                        %
  1514.           %  | +--ALICE                           Alice     Alice Ramse  %
  1515.           %  | |  +--COUNCIL      #                         Legislative  %
  1516.           %  | |  +--LWVADS.VPP                                          %
  1517.           %  | +--BBS                             Bbs       BBS Center   %
  1518.           %  | |  +--BACKUP                                              %
  1519.           %  | +--BRIEF                                                  %
  1520.           %  | |  +--BACKUP                                              %
  1521.           %  | |  +--HELP                                                %
  1522.           %  | |  +--MACROS                                              %
  1523.           %  | +--CHRIS                                     Chris Ramse  %
  1524.           %                                                              %
  1525.           %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  1526.  
  1527.       The figure above shows the Space Display, which is shown whenever you
  1528.       select  the  Space  Command.  This is one of those cases in which the
  1529.       information in the Main Window is temporarily replaced. This  display
  1530.       is  one  of the ways you can move around from place to place, looking
  1531.       at the various objects on your disk. You can tell you're  looking  at
  1532.  
  1533.  
  1534.    InContxt.DOC                      -21-                      January 1993
  1535.  
  1536.  
  1537.  
  1538.  
  1539.    InContext User Guide                          INTERACTING WITH INCONTEXT
  1540.  
  1541.  
  1542.       the  Space  Display  because of the bold word "Space" near the top of
  1543.       the screen.
  1544.  
  1545.       Notice also that additional information  is  shown  there  about  the
  1546.       display  mode  ("Tree Mode"). Some displays, including the Space Dis-
  1547.       play, have more than one way of displaying information.
  1548.  
  1549.       Another thing to observe is that this window has its own Command Bar,
  1550.       showing the commands that are available  from  within  this  display.
  1551.       Some of these allow you to change display modes. (You can see "@Tree"
  1552.       Mode  and  "@Name"  Mode  in  the  portion  of the Command Bar that's
  1553.       visible in the figure.) Almost every display has  a  "Help"  command,
  1554.       and many allow printing.
  1555.  
  1556.  
  1557.    Selecting Things
  1558.    ----------------
  1559.  
  1560.       For  the most part, you can select commands or other things in any of
  1561.       several ways, as you find convenient. You may use  a  mouse  (if  you
  1562.       have  one), or cursor keys, or the regular keyboard to control InCon-
  1563.       text. These input modes are all available to you all  the  time.  You
  1564.       may switch among them at will.
  1565.  
  1566.  
  1567.       Selecting Things with A Mouse
  1568.       -----------------------------
  1569.       If you have a mouse, you can move the cursor to the command or infor-
  1570.       mation  you  want  to  select,  and  push the left mouse button. This
  1571.       causes the indicated command or  object  to  be  selected.  (In  some
  1572.       cases,  double-clicking  results in special behavior, described else-
  1573.       where in this User Guide.)
  1574.  
  1575.       If you are in a display other than the Main Display, the right  mouse
  1576.       button will cause you to pop back up to the Main Display.
  1577.  
  1578.  
  1579.       Selecting Things Using the Cursor Keys
  1580.       --------------------------------------
  1581.       Whether  or  not  you  have  a  mouse, you can move the cursor to the
  1582.       command or object with the  cursor  control  keys,  and  press  ENTER
  1583.       (sometimes labelled "Return" or "CR").
  1584.  
  1585.       If  you  are in a display other than the Main Display, the escape key
  1586.       ("ESC") will cause you to pop back to the Main Display.
  1587.  
  1588.  
  1589.  
  1590.  
  1591.  
  1592.  
  1593.    InContxt.DOC                      -22-                      January 1993
  1594.  
  1595.  
  1596.  
  1597.  
  1598.    InContext User Guide                          INTERACTING WITH INCONTEXT
  1599.  
  1600.  
  1601.       Selecting Things Using the Regular Keyboard
  1602.       -------------------------------------------
  1603.       To select a command, and  to  make  further  selections  within  that
  1604.       command,  you  can  simply  type  the  first letter of the command or
  1605.       object you want. Sometimes, you may  need  to  select  among  several
  1606.       things  that  start  with  the  same  letter. In that case, just keep
  1607.       typing the same letter until the item you want is brightly lit.  Then
  1608.       press ENTER or press the left mouse button.
  1609.  
  1610.       As  just  explained,  many  displays  allow  you to select an item by
  1611.       pressing an alphabetic character. This means that  the  ordinary  al-
  1612.       phabet  is  not available, in these displays, as a means of selecting
  1613.       commands from the Command Bar. Commands  in  these  displays  may  be
  1614.       selected by holding down the ALT key as you press the first letter of
  1615.       the  command.  For  example,  printing  such  a display might require
  1616.       holding down ALT and pressing "P". Whenever an ALT-key  is  required,
  1617.       the  Command  Bar  will  indicate this by showing a little raised "a"
  1618.       symbol before the first character of the command. In this User Guide,
  1619.       the symbol used will be "@".
  1620.  
  1621.  
  1622.       Selecting Multiple Objects
  1623.       --------------------------
  1624.       In the special case of object selection, you can also select multiple
  1625.       objects by holding down the shift or Ctrl key while selecting them.
  1626.  
  1627.  
  1628.    Display Scrolling and Paging
  1629.    ----------------------------
  1630.  
  1631.       When a command has been selected, you will  generally  see  a  window
  1632.       that corresponds to that display. Often, there may be too much infor-
  1633.       mation  to fit in the window. Whenever that happens, you can "scroll"
  1634.       or "page" through the information.
  1635.  
  1636.  
  1637.       Scrolling and Paging Using the Keyboard
  1638.       ---------------------------------------
  1639.       Paging, using the PgUp ("page up") and PgDn ("page down") keys allows
  1640.       you to move up or down through the information one whole windowful at
  1641.       a time.
  1642.  
  1643.       Scrolling allows you to move continuously  up  or  down  through  the
  1644.       information.  To  do  this,  you hold down the up-arrow or down-arrow
  1645.       key.
  1646.  
  1647.  
  1648.  
  1649.  
  1650.  
  1651.  
  1652.    InContxt.DOC                      -23-                      January 1993
  1653.  
  1654.  
  1655.  
  1656.  
  1657.    InContext User Guide                          INTERACTING WITH INCONTEXT
  1658.  
  1659.  
  1660.       Scrolling and Paging Using the Mouse
  1661.       ------------------------------------
  1662.       Scrolling can also be done using the mouse. Simply move the cursor to
  1663.       the top or bottom of the window and continue moving it  in  the  same
  1664.       direction. The display will scroll.
  1665.  
  1666.       Paging  can  be  done  with  the mouse, too, though it takes a little
  1667.       practice to get it right. To page  down,  you  press  the  right  (or
  1668.       middle) mouse button down and hold it while pressing the left button.
  1669.       The  motion  is  a  little  like "drumming your fingers". Once you've
  1670.       learned it, it works very effectively. To page  up,  just  press  the
  1671.       left  button  first,  and  hold  it down while pressing the right (or
  1672.       middle) button.
  1673.  
  1674.       Once you've mastered the use of the mouse to page up  and  down,  you
  1675.       can  cause  continuous  scrolling  by simply performing the "drumming
  1676.       your fingers" motion, but holding the keys down until you  reach  the
  1677.       part  of  the  displayed  information  that you're interested in. The
  1678.       speed at which such continuous scrolling occurs is  under  your  con-
  1679.       trol. See "Video and Display Options".
  1680.  
  1681.  
  1682.    Escaping from Windows
  1683.    ---------------------
  1684.  
  1685.       If  you  select a command and decide to exit its window without doing
  1686.       anything, simply press ESC  ("escape"),  or  press  the  right  mouse
  1687.       button.
  1688.  
  1689.  
  1690.    Function Keys
  1691.    -------------
  1692.  
  1693.       A few particularly important commands are also selectable by pressing
  1694.       function  keys.  The  table  below shows the meanings of the function
  1695.       keys. If you happen to have a three-button mouse, the  middle  button
  1696.       is  equivalent  to F2, except on the Main Display, where it is equiv-
  1697.       alent to F6.
  1698.  
  1699.  
  1700.  
  1701.  
  1702.  
  1703.  
  1704.  
  1705.  
  1706.  
  1707.  
  1708.  
  1709.  
  1710.  
  1711.    InContxt.DOC                      -24-                      January 1993
  1712.  
  1713.  
  1714.  
  1715.  
  1716.    InContext User Guide                          INTERACTING WITH INCONTEXT
  1717.  
  1718.  
  1719.               %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  1720.               %                                                      %
  1721.               %  Function Key     Effect of Function Key             %
  1722.               %  ============   ===================================  %
  1723.               %       F1        Invoke context-specific help         %
  1724.               %       F2        Edit the information shown (on       %
  1725.               %                    main display, edit current task)  %
  1726.               %       F3        Edit notes for current task          %
  1727.               %       F4        Print the information shown          %
  1728.               %       F5        Add a new task                       %
  1729.               %       F6        Pop top item from Work-in-Progress   %
  1730.               %       F8        Change main display format           %
  1731.               %       F9        Create a new object                  %
  1732.               %                                                      %
  1733.               %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  1734.  
  1735.  
  1736.    Help
  1737.    ----
  1738.  
  1739.       A particularly important feature of InContext is its  help  facility.
  1740.       By  pressing (help) almost any time, or by typing "H" or "?" when the
  1741.       Main Display is showing, you can gain access to on-line assistance in
  1742.       the use of InContext.
  1743.  
  1744.       Several features of the help system are worth noticing:
  1745.  
  1746.          o  The help system has a hierarchic structure. You can easily move
  1747.             around in this information hierarchy. For more specific  infor-
  1748.             mation,  select a topic from the Command Bar. For less specific
  1749.             information, press the "ESC" key.
  1750.  
  1751.          o  When "Help" is selected from the  Main  Display,  the  top-most
  1752.             information  in  the  hierarchy  is  displayed.  You can search
  1753.             downward from there for specific topics.
  1754.  
  1755.          o  When "Help" is selected from other display contexts,  the  help
  1756.             information  that is most relevant is displayed. You can search
  1757.             upward or downward from there, if necessary.
  1758.  
  1759.          o  The help  system  is  also  richly  provided  with  "navigation
  1760.             buttons".  These  buttons (technically known as hypertext poin-
  1761.             ters) are selectable words or phrases in the displayed text. If
  1762.             you select one, you will move right to the  indicated  informa-
  1763.             tion. Pressing ESC will bring you back.
  1764.  
  1765.  
  1766.       Some  special  topics  are discussed in the help system. These topics
  1767.       are available from the top help display, and include:
  1768.  
  1769.  
  1770.    InContxt.DOC                      -25-                      January 1993
  1771.  
  1772.  
  1773.  
  1774.  
  1775.    InContext User Guide                          INTERACTING WITH INCONTEXT
  1776.  
  1777.  
  1778.          o  Product support and registration ("Support")
  1779.  
  1780.          o  Commonly asked questions ("How?"). This  section  of  the  help
  1781.             information doubles as an index to the help system.
  1782.  
  1783.  
  1784.  
  1785.       The InContext Tutorial
  1786.       ----------------------
  1787.  
  1788.          The  help  system  also contains a very thorough tutorial. For the
  1789.          new user, this is a quick and sure way to gain an understanding of
  1790.          InContext. To access the tutorial, just select "Help" by  pressing
  1791.          "H"  from  the  Main  Display.  Read what's there, and then select
  1792.          "Tutorial" by pressing "T".
  1793.  
  1794.  
  1795.       Editing in InContext
  1796.       --------------------
  1797.  
  1798.          You will encounter three different kinds of editing in  InContext.
  1799.          Although these three kinds of editing have many similarities, they
  1800.          also  have differences, and it is important that you be able to do
  1801.          all three. The three are:
  1802.  
  1803.             o  editing text
  1804.  
  1805.             o  editing options
  1806.  
  1807.             o  editing dictionaries
  1808.  
  1809.  
  1810.  
  1811.          Editing Text
  1812.          ------------
  1813.          InContext has its own, simple internal  editor  for  use  on  task
  1814.          notes  and, if you choose, other small text files. (If you choose,
  1815.          you can make use of your own  preferred  editor,  instead.)  Shown
  1816.          below is an example, with the internal editor invoked.
  1817.  
  1818.  
  1819.  
  1820.  
  1821.  
  1822.  
  1823.  
  1824.  
  1825.  
  1826.  
  1827.  
  1828.  
  1829.    InContxt.DOC                      -26-                      January 1993
  1830.  
  1831.  
  1832.  
  1833.  
  1834.    InContext User Guide                          INTERACTING WITH INCONTEXT
  1835.  
  1836.  
  1837.                  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  1838.                  %                                                     %
  1839.                  %   Dir: H. Rudy Ramsey Personal Center -- RUDY       %
  1840.                  %   Drive: C   View: Letters   Class: ALL   Object:   %
  1841.                  %              ==Plans====                            %
  1842.                  %  ==Edit=Notes:=carmaint=--=Do=Maintenance=on=Cars=  %
  1843.                  %  |                                                  %
  1844.                  %  |              ╔---------------------------------  %
  1845.                  %  |              |             Do Maintenance on Ca  %
  1846.                  %  |              ╚---------------------------------  %
  1847.                  %  |                                                  %
  1848.                  %  |Honda                                             %
  1849.                  %  |   Check oil                                      %
  1850.                  %  |   Check coolant                                  %
  1851.                  %  |   Check washer fluid#                            %
  1852.                  %  |   Check brake fluid                              %
  1853.                  %  |   Check manual for other stuff                   %
  1854.                  %  |   Check tires, pressures                         %
  1855.                  %  |   Consider longer-term maintenance that might b  %
  1856.                  %  |         oil change, tune-up, alignment, lube, e  %
  1857.                  %  |   Wash dash                                      %
  1858.                  %  |   Vacuum inside                                  %
  1859.                  %  |   Wash exterior                                  %
  1860.                  %                                                     %
  1861.                  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  1862.  
  1863.          To  use  this  editor,  simply  move the cursor to the position at
  1864.          which you would like to add or delete text. You can add text there
  1865.          by simply typing. If "Insert Mode" is visible in  the  lower  left
  1866.          corner  of  the window, the text you type will be inserted; other-
  1867.          wise, it will replace any existing text that you  type  over.  The
  1868.          Ins (insert) key toggles the mode between insert and replace.
  1869.  
  1870.          The  window  is  scrollable,  so  you can use the usual methods of
  1871.          moving around the text.
  1872.  
  1873.          The following special commands are also available in  this  editor
  1874.          (these commands are similar to those used in the BRIEF editor):
  1875.  
  1876.             Cursor Movement
  1877.  
  1878.                Home      Pressed once, this moves the cursor to the
  1879.                          beginning of the current line; pressed a second
  1880.                          time, it moves the cursor to the beginning of the
  1881.                          current window; pressed a third time, it moves the
  1882.                          cursor to the beginning of the file.
  1883.  
  1884.                End       Pressed once, moves cursor to end of line; pressed
  1885.                          again, moves cursor to end of window; pressed
  1886.  
  1887.  
  1888.    InContxt.DOC                      -27-                      January 1993
  1889.  
  1890.  
  1891.  
  1892.  
  1893.    InContext User Guide                          INTERACTING WITH INCONTEXT
  1894.  
  1895.  
  1896.                          again, moves cursor to end of file.
  1897.  
  1898.                Alt-G     Go to specified line number.
  1899.  
  1900.                Alt-S     Search forward for specified text.
  1901.  
  1902.                Alt-N     Search forward for Next instance, using same text.
  1903.  
  1904.                Ctrl-RA   Control-right-arrow: go to beginning of next word
  1905.  
  1906.                Ctrl-LA   Control-left-arrow: go to beginning of previous word
  1907.  
  1908.  
  1909.             Line Breaking and Joining
  1910.  
  1911.                ENTER     Break current line at cursor location.
  1912.  
  1913.                Alt-J     Join current line and next line.
  1914.  
  1915.  
  1916.             Insertion, Deletion, Cut/Paste
  1917.  
  1918.                Ins       Toggle insert/replace mode.
  1919.  
  1920.                Del       Delete character at cursor position.
  1921.  
  1922.                Alt-D     Delete the line at the current cursor position.
  1923.                          (If lines marked, delete them after verification.)
  1924.  
  1925.                Alt-I     Insert an empty line at current cursor position.
  1926.  
  1927.                Alt-M     Pressed once, Marks line for deletion or for cut
  1928.                          to buffer; pressed again on another line, marks
  1929.                          all intervening lines; pressed again, unmarks all
  1930.                          lines.
  1931.  
  1932.                Grey -    Cut marked lines (or current line if none are
  1933.                          marked) to buffer.
  1934.  
  1935.                Grey +    Paste buffer at current cursor location.
  1936.  
  1937.                Alt-K     ("Kill") Delete from current position to end of
  1938.                          line.
  1939.  
  1940.  
  1941.             Exit Editor
  1942.  
  1943.                Alt-W     Write file and exit editor.
  1944.  
  1945.  
  1946.  
  1947.    InContxt.DOC                      -28-                      January 1993
  1948.  
  1949.  
  1950.  
  1951.  
  1952.    InContext User Guide                          INTERACTING WITH INCONTEXT
  1953.  
  1954.  
  1955.                Alt-X     Exit without save (after user verifies intent).
  1956.  
  1957.          If you have a mouse, you can use it to mark, cut, paste, or delete
  1958.          lines  in  the  editor. Just place the cursor on the relevant line
  1959.          and press the left mouse button for a menu of possible actions.
  1960.  
  1961.          The capacity of the internal editor depends on  available  memory.
  1962.          As  an  indication,  files  up  to 95K are editable with a typical
  1963.          InContext installation on a 640K system, without resorting  to  an
  1964.          external editor. InContext will automatically choose your external
  1965.          editor,  if  you  define  one  (see "incEdit" macro under "Special
  1966.          Macros Used to Control InContext") and the file you  edit  exceeds
  1967.          either  available  memory  or your predefined file size limit (see
  1968.          "Miscellaneous Options").
  1969.  
  1970.          The editor will automatically save backup copies of each file  you
  1971.          edit,  if  you  enter  a backup directory path (see "Miscellaneous
  1972.          Options").
  1973.  
  1974.  
  1975.          Editing InContext Options
  1976.          -------------------------
  1977.          In changing the  configuration  options  of  InContext,  you  will
  1978.          encounter two different kinds of fields. They are both illustrated
  1979.          in the sample display below.
  1980.  
  1981.                   %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  1982.                   %                                                   %
  1983.                   %  ==Change=Display=Formats=and=User=Information==  %
  1984.                   %  |                                                %
  1985.                   %  | User Name:  H.=Rudy=Ramsey==============  Reg  %
  1986.                   %  |                                                %
  1987.                   %  | Date format: mm/dd/yy                     Tim  %
  1988.                   %  |                                                %
  1989.                   %                                                   %
  1990.                   %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  1991.  
  1992.          The  "User  Name" field in this display is an editable text field.
  1993.          In general, editable text fields are displayed in different colors
  1994.          than other text. By placing the cursor in this field  and  typing,
  1995.          you  can modify the text there. Typing with the cursor not in such
  1996.          a field has no effect.
  1997.  
  1998.          As in normal text editing, the characters you type may be inserted
  1999.          or may replace existing characters, depending on the mode. The Ins
  2000.          (insert) key toggles the mode between insert and replace.
  2001.  
  2002.          The "Date Format" field is displayed in bold characters  (this  is
  2003.          not  apparent  in  the  figure  printed  above). In the context of
  2004.  
  2005.  
  2006.    InContxt.DOC                      -29-                      January 1993
  2007.  
  2008.  
  2009.  
  2010.  
  2011.    InContext User Guide                          INTERACTING WITH INCONTEXT
  2012.  
  2013.  
  2014.          editing options, such a field is capable of cycling through a  set
  2015.          of  available values. Just place the cursor on the field and press
  2016.          ENTER or the left mouse button to see the next value. You can  use
  2017.          the Tab key to move from field to field.
  2018.  
  2019.  
  2020.          Editing Dictionaries
  2021.          --------------------
  2022.          Several  of  the structures you will want to edit in InContext are
  2023.          what we loosely call "dictionaries". A dictionary contains a  list
  2024.          of  "Names", with some information associated with each name. Each
  2025.          "Name" is a short (up to 8 characters), unique  name  assigned  by
  2026.          the  user. Each name has a "Description" associated with it, which
  2027.          can be thought of as a longer name, available for display. In some
  2028.          dictionaries, each name also has an associated "Definition".  This
  2029.          definition  may  be  a  procedure,  a  list  of object classes, or
  2030.          various other things, depending on the context.
  2031.  
  2032.          As an example, let's consider the "Views" list  (see  the  display
  2033.          below).  This contains names of user-defined "views". Consider the
  2034.          entry with  the  NAME  "Document".  The  "Document"  view  can  be
  2035.          selected by the user in order to see objects related to documents,
  2036.          while  filtering out other objects that may be present in the same
  2037.          directory, such as programs, graphical images, etc. In the display
  2038.          shown below, the "Document" view has the  associated  DESCRIPTION,
  2039.          "Document  preparation view". The DEFINITION of that view would be
  2040.          a list of object classes (i.e., filename  extensions)  to  be  in-
  2041.          cluded  in the view. A possible list might be "doc", "fmt", "ltr",
  2042.          and "txt".
  2043.  
  2044.  
  2045.  
  2046.  
  2047.  
  2048.  
  2049.  
  2050.  
  2051.  
  2052.  
  2053.  
  2054.  
  2055.  
  2056.  
  2057.  
  2058.  
  2059.  
  2060.  
  2061.  
  2062.  
  2063.  
  2064.  
  2065.    InContxt.DOC                      -30-                      January 1993
  2066.  
  2067.  
  2068.  
  2069.  
  2070.    InContext User Guide                          INTERACTING WITH INCONTEXT
  2071.  
  2072.  
  2073.                  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  2074.                  %                                                     %
  2075.                  %        ==View====                                   %
  2076.                  %  ==Editing=View=Definitions================@Help==  %
  2077.                  %  |                                               |  %
  2078.                  %  | Brief Name     Your Description               |  %
  2079.                  %  |  Archive=     Archive=files=================  |  %
  2080.                  %  |  Chess===     Chess=games===================  |  %
  2081.                  %  |  Docum#nt     Document=preparation=view=====  |  %
  2082.                  %  |  Finance=     Financial=management=view=====  |  %
  2083.                  %  |  Fonts===     Laser=printer=fonts===========  |  %
  2084.                  %  |  Graphics     Graphical=objects=============  |  %
  2085.                  %  |  Incontxt     InContext=control=artifacts===  |  %
  2086.                  %  |  Letters=     Letters=on=various=letterhead=  |  %
  2087.                  %  |  Messages     CompuServe=messages===========  |  %
  2088.                  %  |  Programs     Executable=programs===========  |  %
  2089.                  %  |  Source==     Source=programming=view=======  |  %
  2090.                  %  |  Tapcis==     CIS-=and=TAPCIS-related=stuff=  |  %
  2091.                  %  |  Ventura=     Ventura=Publisher=artifacts===  |  %
  2092.                  %  |  Writing=     Source=author=view============  |  %
  2093.                  %  |  Xref====     Cross-references,=maps,=etc.==  |  %
  2094.                  %  |                                               |  %
  2095.                  %                                                     %
  2096.                  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  2097.  
  2098.          In general, you must select the "Edit" mode before you can edit  a
  2099.          dictionary.  Usually,  that  is done by selecting "@Edit" from the
  2100.          Command Bar, or by pressing function key F2,  the  Edit  key.  The
  2101.          display above is the "Views" display, after this has been done. In
  2102.          this Edit mode, the user can redefine the list of available views.
  2103.  
  2104.          Once you are editing such a dictionary, simply place the cursor on
  2105.          the  field  you  want  to  change and type. This will allow you to
  2106.          change the "Name" and "Description"  fields.  All  the  principles
  2107.          discussed  above  in  connection  with  editable text fields apply
  2108.          here.
  2109.  
  2110.          In addition to editing the fields that are present, you can add or
  2111.          delete fields. The special commands for this are:
  2112.  
  2113.             Alt-D  Delete the  line  the  cursor  is  currently  on,  after
  2114.                    verifying user intent.
  2115.  
  2116.             Alt-I  Insert an empty line before the current line.
  2117.  
  2118.             ENTER  Insert an empty line after the current line.
  2119.  
  2120.  
  2121.          To  edit  the definition of one of these entries, place the cursor
  2122.  
  2123.  
  2124.    InContxt.DOC                      -31-                      January 1993
  2125.  
  2126.  
  2127.  
  2128.  
  2129.    InContext User Guide                          INTERACTING WITH INCONTEXT
  2130.  
  2131.  
  2132.          on the desired entry and press the left mouse button or  the  Edit
  2133.          key  (function  key  F2). You will then be editing the definition.
  2134.          See "Editing Text", above, for a discussion of how that is done.
  2135.  
  2136.          Exiting the editor simply involves pressing the right mouse button
  2137.          or the Esc key once for each level you wish to exit. If you change
  2138.          your mind about an editing operation before you  have  exited  it,
  2139.          you  may  press Alt-X to exit without saving the modified informa-
  2140.          tion.
  2141.  
  2142.  
  2143.       The Internal File Viewer
  2144.       ------------------------
  2145.  
  2146.          InContext has an internal file viewer capable of displaying  ASCII
  2147.          files with their normal text appearance, and capable of displaying
  2148.          any  file  in  hexadecimal notation. An abbreviated example of the
  2149.          latter is:
  2150.  
  2151.                  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  2152.                  %                                                     %
  2153.                  %  Viewing="temp."=(Data=Mode)======@Text @Data=====  %
  2154.                  %  000000  49 6E 43 6F 6E 74 65 78  InContext has an  %
  2155.                  %  000010  20 69 6E 74 65 72 6E 61   internal file v  %
  2156.                  %  000020  69 65 77 65 72 20 63 61  iewer capable of  %
  2157.                  %  000030  20 64 69 73 70 6C 61 79   displaying ASCI  %
  2158.                  %  000040  49 20 66 69 6C 65 73 0D  I files* with th  %
  2159.                  %  000050  65 69 72 20 6E 6F 72 6D  eir normal text   %
  2160.                  %  000060  61 70 70 65 61 72 61 6E  appearance, and   %
  2161.                  %  000070  63 61 70 61 62 6C 65 20  capable of displ  %
  2162.                  %  000080  61 79 20 61 6E 79 20 66  ay any file in*   %
  2163.                  %  000090  68 65 78 61 64 65 63 69  hexadecimal nota  %
  2164.                  %  0000A0  74 69 6F 6E 2E 20 20 41  tion.  An abbrev  %
  2165.                  %  0000B0  69 61 74 65 64 20 65 78  iated example of  %
  2166.                  %  0000C0  20 74 68 65 20 6C 61 74   the latter is:*  %
  2167.                  %  0000D0  0A 0D 0A 1A               *                %
  2168.                  %                                                     %
  2169.                  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  2170.  
  2171.          This "Data Mode" is obtained by selecting "@Data" from the Command
  2172.          Bar. To switch back to the normal text  display  (if  applicable),
  2173.          select  "@Text".  The  viewer initially analyzes the file, and at-
  2174.          tempts to select the appropriate mode, but you may switch back and
  2175.          forth at will.
  2176.  
  2177.          The normal cursor-control operations, including Home, End,  Paging
  2178.          and Scrolling, can be used in the viewer.
  2179.  
  2180.          You  can  go  to  a  particular  line,  by  line number, using the
  2181.  
  2182.  
  2183.    InContxt.DOC                      -32-                      January 1993
  2184.  
  2185.  
  2186.  
  2187.  
  2188.    InContext User Guide                          INTERACTING WITH INCONTEXT
  2189.  
  2190.  
  2191.          @GoToLine command (Alt-G on the keyboard).
  2192.  
  2193.          You can also search for particular text,  using  the  @Search  and
  2194.          @Next  commands.  Use  @Search  (Alt-S on the keyboard) to enter a
  2195.          search string and search forward for it (from the  current  cursor
  2196.          location). Use @Next to search again for the same string.
  2197.  
  2198.          There  is  no limit to the size of the file that can be handled by
  2199.          the viewer.
  2200.  
  2201.  
  2202.       The Internal Archive Viewer
  2203.       ---------------------------
  2204.  
  2205.          InContext    provides     internal     support     for     several
  2206.          archive/compression  programs.  These are programs that compress a
  2207.          collection of files into a single file, thereby
  2208.  
  2209.             o  conserving space, and
  2210.  
  2211.             o  collecting them into a  single  file  for  easy  storage  or
  2212.                transport.
  2213.  
  2214.  
  2215.          Archive formats and archivers supported by InContext include:
  2216.  
  2217.             ARC  An  archive  format  for  which several archivers are sup-
  2218.                  ported:
  2219.                     ARCA/ARCE -- Freeware programs with limited functionality
  2220.                     ARC -- SEA's archive program
  2221.                     PKPAK/PKUNPAK -- Phil Katz's earlier archiver programs.
  2222.  
  2223.             ARJ  ARJ -- Robert Jung's relatively new archive program
  2224.  
  2225.             LZH  LHA -- Haruyasu Yoshizaki's free archiver.
  2226.  
  2227.             PAK  PAK -- NoGate Consultings archiver, also used for distri-
  2228.                         bution by the Software Distribution Network.
  2229.  
  2230.             ZIP  PKZIP/PKUNZIP -- Phil Katz's more recent archive programs.
  2231.  
  2232.          You may use InContext to manage archives in any of these  formats,
  2233.          using  any  of these archivers. With the exception of LHA, none of
  2234.          these archivers are provided with InContext. You must obtain  them
  2235.          separately.
  2236.  
  2237.  
  2238.  
  2239.  
  2240.  
  2241.  
  2242.    InContxt.DOC                      -33-                      January 1993
  2243.  
  2244.  
  2245.  
  2246.  
  2247.    InContext User Guide                          INTERACTING WITH INCONTEXT
  2248.  
  2249.  
  2250.          InContext Makes Special Use of LHA
  2251.          ----------------------------------
  2252.          You  may,  or  may  not,  choose  to use the LHA program to manage
  2253.          archives of your  own.  Regardless  of  that  decision,  InContext
  2254.          sometimes  makes use of LHA to manage certain archives of its own.
  2255.          For that reason, LHA  is  distributed  along  with  InContext,  to
  2256.          insure that you have it on your system. The files produced by LHA,
  2257.          incidentally, usually have the filename extension (class) "lzh".
  2258.  
  2259.          If  you  choose, you can keep several kinds of InContext artifacts
  2260.          in LHA archives in order to minimize the disk usage  of  InContext
  2261.          itself.  By  placing  help files in the archive "help.lzh", object
  2262.          templates   in   "template.lzh",   and   action   definitions   in
  2263.          "actions.lzh",  you  cause  InContext  to  extract  them only when
  2264.          needed. This takes more time, but uses much less disk space.
  2265.  
  2266.  
  2267.          Viewing Archives
  2268.          ----------------
  2269.          InContext allows you to view archive files of any of the supported
  2270.          types using an internal viewer similar to that  used  for  Objects
  2271.          (see  later  "OBJECTS  AND  VIEWS" chapter). An example display is
  2272.          shown below. You can see this much about an archive of a supported
  2273.          type even if you don't have the associated  archiver,  since  this
  2274.          display is produced by InContext alone.
  2275.  
  2276.          %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  2277.          %                                                                %
  2278.          %   Dir: InContext Artifacts -- INCONTXT                         %
  2279.          %   Drive: C   View: ALL       Class: lzh   Object: template.lz  %
  2280.          %                                               ==Action====     %
  2281.          %  ==Viewing=archive="template.lzh"============================  %
  2282.          %  ======@ArchiveOp==Modes:=@Full=@Brief==Orders:=@Class=@Name=  %
  2283.          %  |                                                             %
  2284.          %  |   Filename        Size    Date   Time   CmpSize Method  Pa  %
  2285.          %  |      act.tpl #      83   2/5/90 18:30        60 FROZEN      %
  2286.          %  |      apt.tpl       566   4/6/91 12:03       312 FROZEN      %
  2287.          %  |      asm.tpl       667  3/23/89 18:02       297 FROZEN      %
  2288.          %  |      bat.tpl      1463   3/7/90  9:42       388 FROZEN      %
  2289.          %                                                                %
  2290.          %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  2291.  
  2292.          Aside  from  the  usual  object  information, you can see that the
  2293.          object "bat.tpl" is 1463 bytes in size when it resides normally on
  2294.          the disk, but it has been compressed to 388 bytes in the  archive,
  2295.          using  a  compression  method  called  "freezing".  You needn't be
  2296.          concerned about compression methods, since they are handled  auto-
  2297.          matically.
  2298.  
  2299.  
  2300.  
  2301.    InContxt.DOC                      -34-                      January 1993
  2302.  
  2303.  
  2304.  
  2305.  
  2306.    InContext User Guide                          INTERACTING WITH INCONTEXT
  2307.  
  2308.  
  2309.          If  you select an object from this display, InContext will present
  2310.          a menu containing actions relevant to objects in  an  archive.  In
  2311.          general,  you  can  perform these actions only if you have the as-
  2312.          sociated archiver.
  2313.  
  2314.          %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  2315.          %                                                                 %
  2316.          %  ==What=action=do=you=want=to=take=with="bat.tpl"=============  %
  2317.          %  | View #  -- View file                                         %
  2318.          %  | Delete  -- Delete object from this archive                   %
  2319.          %  | Freshen -- If corresponding disk file is later, freshen arc  %
  2320.          %  | Kill    -- Remove corresponding file from disk               %
  2321.          %  | Xtract  -- Extract copy of this object from archive to disk  %
  2322.          %  +------------------------------------------------------------  %
  2323.          %                                                                 %
  2324.          %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  2325.  
  2326.          This menu allows you to view the object,  delete  it,  update  its
  2327.          image  in  the  archive,  remove  the  corresponding disk file, or
  2328.          extract the object to disk (without removing it from the archive).
  2329.  
  2330.          You may also select the  "@ArchiveOp"  command  from  the  command
  2331.          line,  in  order  to  select  among  actions that affect the whole
  2332.          archive, rather than a single file in the archive. These resulting
  2333.          menu is shown below.
  2334.  
  2335.          %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  2336.          %                                                               %
  2337.          %  ==What=action=do=you=want=to=take=with=this=archive?=======  %
  2338.          %  | Freshen All# -- Freshen archive from all corresponding di  %
  2339.          %  | Kill All     -- Remove all corresponding files from disk   %
  2340.          %  | Make Self-X  -- Convert archive to self-extractor, if sup  %
  2341.          %  | Path Extract -- Extract all files to indicated paths, if   %
  2342.          %  | Xtract All   -- Extract copies of all files to current di  %
  2343.          %  +----------------------------------------------------------  %
  2344.          %                                                               %
  2345.          %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  2346.  
  2347.          To perform these actions, too, you must have  the  associated  ar-
  2348.          chiver properly installed on your system.
  2349.  
  2350.          For more information about using the various archivers, review the
  2351.          "EXAMPLES  AND  APPLICATION  NOTES"  chapter,  and  then  see  the
  2352.          ARCHIVER.APP Application Note (AppNote) in  the  APPNOTES.LZH  ar-
  2353.          chive. See also the "viewArchive" command in the "InContext Inter-
  2354.          nal Commands" section of the chapter, "CLASSES AND ACTIONS".
  2355.  
  2356.  
  2357.  
  2358.  
  2359.  
  2360.    InContxt.DOC                      -35-                      January 1993
  2361.  
  2362.  
  2363.  
  2364.  
  2365.    InContext User Guide                                   OBJECTS AND VIEWS
  2366.  
  2367.  
  2368.           
  2369.                              +-------------------+
  2370.                              | OBJECTS AND VIEWS |
  2371.                              +-------------------+
  2372.  
  2373.  
  2374.  
  2375.       When  we  talk  about OBJECTS in this User Guide, we're talking about
  2376.       files, and sometimes sets of files. They're called "objects" because,
  2377.       when you use InContext, they  exhibit  some  of  the  properties  you
  2378.       naturally associate with objects in the physical world.
  2379.  
  2380.       Objects  in  the real world are naturally associated with the ACTIONS
  2381.       you can take with them. You can drink from a coffee cup, or  fill  it
  2382.       up,  or even throw it, but you can't write with it or drive it to the
  2383.       grocery store. And we tend to think in terms of actions  rather  than
  2384.       the  tools  that  are used in the actions. When you toss a salad, the
  2385.       emphasis is on the action, "toss", and not on the fork and spoon used
  2386.       to do the tossing.
  2387.  
  2388.       In the computer world in  general,  and  MS-DOS  in  particular,  the
  2389.       emphasis has been on the tools. There are (data) files, and there are
  2390.       programs  (tools).  You  invoke  a certain program on a certain file,
  2391.       perhaps with special arguments, and a desired action results. But the
  2392.       user has to remember which program, with which arguments, performs  a
  2393.       particular action on which kind of file.
  2394.  
  2395.       With  InContext, selecting an object gives you a list of actions that
  2396.       are applicable to the object. Common examples are edit, copy, rename,
  2397.       delete, and print. Selecting  the  action  causes  execution  of  the
  2398.       appropriate procedure to perform the action.
  2399.  
  2400.  
  2401.    Object Classes
  2402.    --------------
  2403.  
  2404.       In  MS-DOS, files are given names like "autoexec.bat". The characters
  2405.       after the period (in this case, "bat") identify the kind of  file  it
  2406.       is. InContext uses this "filename extension" to indicate the CLASS of
  2407.       an object. Thus, an ordinary text file might be of class "txt", while
  2408.       a Lotus 1-2-3 spreadsheet might be of class "wk1".
  2409.  
  2410.       Incidentally,  InContext  also  has  to  have some way of showing you
  2411.       files which have no filename extension.  These  files  are  displayed
  2412.       using  the  Greek  letter  Phi  ("φ",  often  used to mean "empty" or
  2413.       "nothing"). Thus a file named simply "temp"  would  be  displayed  by
  2414.       InContext as "temp.φ".
  2415.  
  2416.       InContext  allows  the  user  to  define  the actions of a class. One
  2417.  
  2418.  
  2419.    InContxt.DOC                      -36-                      January 1993
  2420.  
  2421.  
  2422.  
  2423.  
  2424.    InContext User Guide                                   OBJECTS AND VIEWS
  2425.  
  2426.  
  2427.       reason for doing this is to cause standard  actions  to  behave  dif-
  2428.       ferently  (and  appropriately)  for  different  classes. For example,
  2429.       Lotus 1-2-3 is an appropriate tool with which  to  "edit"  a  spread-
  2430.       sheet,  but  not  a text object. A second reason is to add operations
  2431.       especially applicable to the class (e.g., "compile" a C  program,  or
  2432.       "plot" a Computer-Aided Design file).
  2433.  
  2434.       If  you  have  not  installed or created a definition of a particular
  2435.       class, then only the basic actions  (like  move,  copy,  delete,  and
  2436.       rename)  are  available for that class. These actions, too, are under
  2437.       your control, and you can redefine them. They do not vary from  class
  2438.       to class, however.
  2439.  
  2440.                       %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  2441.                       %                                      %
  2442.                       %  Class:      document      makefile  %
  2443.                       %              ("doc")       ("mk")    %
  2444.                       %                                      %
  2445.                       %  Actions:    edit          edit      %
  2446.                       %              view          view      %
  2447.                       %              archive       copy      %
  2448.                       %              copy          delete    %
  2449.                       %              delete        rename    %
  2450.                       %              rename        print     %
  2451.                       %              preview       make_pkg  %
  2452.                       %              print         inst_pkg  %
  2453.                       %              spellchk      test_pkg  %
  2454.                       %                            arch_pkg  %
  2455.                       %                                      %
  2456.                       %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  2457.  
  2458.  
  2459.       The  figure  above  shows,  by way of example, sample actions for two
  2460.       defined classes. The "doc" (document) class has some of the  ordinary
  2461.       operations  you might think of in connection with text documents. For
  2462.       example, you can edit it, check its spelling,  preview  how  it  will
  2463.       look  when  printed,  and  save it in an archive. The "mk" (makefile)
  2464.       class is a kind of object that describes  a  software  package  being
  2465.       developed. This class has several actions in common with the document
  2466.       class,  such as view, edit, and delete. However, it also has special-
  2467.       ized operations, such as "make the package", "install  the  package",
  2468.       etc.  While  these  actions  are  listed  above by their short names,
  2469.       intended to fit in limited space, they also have  longer  descriptive
  2470.       names by which you can recognize them in actual use.
  2471.  
  2472.       The  "Classes  and  Actions" chapter, later in this manual, describes
  2473.       how class definitions are constructed. In addition  to  defining  the
  2474.       actions of individual classes, the user is in control of the standard
  2475.       actions  that  apply for undefined classes, and the actions which can
  2476.  
  2477.  
  2478.    InContxt.DOC                      -37-                      January 1993
  2479.  
  2480.  
  2481.  
  2482.  
  2483.    InContext User Guide                                   OBJECTS AND VIEWS
  2484.  
  2485.  
  2486.       be taken on whole sets of selected objects.
  2487.  
  2488.  
  2489.    Focussing by View and Class
  2490.    ---------------------------
  2491.  
  2492.       Although the user can reconfigure InContext  to  behave  differently,
  2493.       the Main Display normally shows several lists, one of which is a list
  2494.       of  objects  in the current directory. For example, the display below
  2495.       shows such objects  as  "videotap.doc"  and  "cramer.ltr".  They  are
  2496.       identifiable   as  objects  because  they  appear  under  the  label,
  2497.       "Objects". However, this display is currently showing objects of  all
  2498.       types, so they're all mixed in together. Furthermore, not all objects
  2499.       are shown, since there are too many to fit in the objects area of the
  2500.       display.  One  way  to deal with this is to select the "Objects" com-
  2501.       mand, in order to pop up a window dedicated entirely  to  objects.  A
  2502.       second way to deal with this is to focus on a smaller set of objects,
  2503.       either by view or by class.
  2504.  
  2505.           %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  2506.           %                                                              %
  2507.           %   Dir: H. Rudy Ramsey Personal Center -- RUDY                %
  2508.           %   Drive: C   View: ALL       Class: ALL   Object:            %
  2509.           %  =Space==Time==Plans==WiP====View==Class==Object==Action===  %
  2510.           %  |                                                           %
  2511.           %  |  Views  Class   Objects                                   %
  2512.           %  | ALL      ALL document.arc  videotap.doc  famtrait.txt  l  %
  2513.           %  | Archive  arc ltrs1988.arc  newhouse.exp  genealog.txt     %
  2514.           %  | Chess    doc  ppiwork.arc  highland.lab  goal1988.txt     %
  2515.           %  | Docum#nt exp biograph.doc   address.lst  goal1989.txt     %
  2516.           %  | Finance  lab camplist.doc    cramer.ltr     house.txt     %
  2517.           %  | Fonts    lst    humor.doc     xcbee.mar   ltrplan.txt     %
  2518.           %  | Graphics ltr    music.doc   consult.msg  medrecrd.txt     %
  2519.           %  | Incontxt mar    names.doc       cti.msg  moveplan.txt     %
  2520.           %  | Letters  msg pararecm.doc   grammar.msg    newage.txt     %
  2521.           %  | Messages org  pccodes.doc   storybd.org    phones.txt     %
  2522.           %  | Programs prn  publist.doc   weights.prn     sdump.txt     %
  2523.           %  | Source   ris     pubs.doc    cooper.ris     train.txt     %
  2524.           %  | Tapcis   run   resume.doc   1988-11.run    travel.txt     %
  2525.           %  | Ventura  txt    songs.doc   1989-01.run     weiss.txt     %
  2526.           %  | Writing  wk1  storybd.doc  booklist.txt   running.wk1     %
  2527.           %  | Xref     zip superemt.doc       box.txt   weights.wk1     %
  2528.           %  |                  temp.doc  contract.txt    labels.zip     %
  2529.           %  |                  test.doc  famtrai2.txt   letters.zip     %
  2530.           %  +- InContext Work Environment Manager ------ Mode: Objects  %
  2531.           %  ==Select=command=(M=for=more),=or=select=any=item=on=main=  %
  2532.           %                                                              %
  2533.           %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  2534.  
  2535.  
  2536.  
  2537.    InContxt.DOC                      -38-                      January 1993
  2538.  
  2539.  
  2540.  
  2541.  
  2542.    InContext User Guide                                   OBJECTS AND VIEWS
  2543.  
  2544.  
  2545.       The  two  columns to the left, "Views" and "Class", are your means of
  2546.       focussing on larger or smaller sets  of  objects.  According  to  the
  2547.       information  in the Context Area at the top of the display, ALL views
  2548.       and ALL object classes in the directory are being displayed.  If  you
  2549.       place  the  cursor  on  the name of a particular view (in the "Views"
  2550.       list) and press the left mouse button or ENTER,  only  objects  which
  2551.       are part of that view will be shown. Similarly, picking the name of a
  2552.       particular  class  (from  the "Class" list), displays only objects of
  2553.       that class.
  2554.  
  2555.       For example, the cursor in the previous display is on the  "Document"
  2556.       view.  Pressing the left mouse button or the ENTER key will result in
  2557.       a display like the following.
  2558.  
  2559.          %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  2560.          %                                                              %
  2561.          %   Dir: H. Rudy Ramsey Personal Center -- RUDY                %
  2562.          %   Drive: C   View: Document  Class: ALL   Object:            %
  2563.          %  =Space==Time==Plans==WiP====View==Class==Object==Action===  %
  2564.          %  |                                                           %
  2565.          %  |  Views  Class   Objects                                   %
  2566.          %  | ALL      ALL biograph.doc    cooper.ris     weiss.txt     %
  2567.          %  | Archive  doc camplist.doc  booklist.txt                   %
  2568.          %  | Chess    fmt    humor.doc       box.txt                   %
  2569.          %  | Document lab    music.doc  contract.txt                   %
  2570.          %  | Finance  ltr    names.doc  famtrai2.txt                   %
  2571.          %  | Fonts    ris pararecm.doc  famtrait.txt                   %
  2572.          %  | Graphics txt  pccodes.doc  genealog.txt                   %
  2573.          %  | Incontxt wdx  publist.doc  goal1988.txt                   %
  2574.          %  | Letters          pubs.doc  goal1989.txt                   %
  2575.          %  | Messages       resume.doc     house.txt                   %
  2576.          %  | Programs        songs.doc   ltrplan.txt                   %
  2577.          %  | Source        storybd.doc  medrecrd.txt                   %
  2578.          %  | Tapcis       superemt.doc  moveplan.txt                   %
  2579.          %  | Ventura          temp.doc    newage.txt                   %
  2580.          %  | Writing          test.doc    phones.txt                   %
  2581.          %  | Xref         videotap.doc     sdump.txt                   %
  2582.          %  |              highland.lab     train.txt                   %
  2583.          %  |                cramer.ltr    travel.txt                   %
  2584.          %  +- User: H. Rudy Ramsey -------------------- Mode: Objects  %
  2585.          %  ==Select=command=(M=for=more),=or=select=any=item=on=main=  %
  2586.          %                                                              %
  2587.          %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  2588.  
  2589.       Notice that the Context Area now indicates the "Document"  view.  You
  2590.       can  see  that the list of objects shown is much smaller. In fact, it
  2591.       contains only objects of the classes, "doc","lab", "ltr", "ris",  and
  2592.       "txt".  These  classes  are defined as included in the Document view.
  2593.       The full list of classes in the document view is shown under  "Class"
  2594.  
  2595.  
  2596.    InContxt.DOC                      -39-                      January 1993
  2597.  
  2598.  
  2599.  
  2600.  
  2601.    InContext User Guide                                   OBJECTS AND VIEWS
  2602.  
  2603.  
  2604.       in  the  Main  Window. It includes the five classes above, as well as
  2605.       several others. Apparently there are no objects of the classes  "fmt"
  2606.       or "wdx" in this directory.
  2607.  
  2608.       If  this  is not a sufficiently fine focus, the cursor can be used to
  2609.       select one of the class names under "Class", and only objects of that
  2610.       class will be shown. Thus, selecting "ltr"  results  in  the  display
  2611.       shown below. Notice that the Context Area now indicates that the view
  2612.       is  "Document" and the class is "ltr". As it happens, the only object
  2613.       of the "ltr" class in this  directory  is  "cramer.ltr",  and  it  is
  2614.       displayed.
  2615.  
  2616.           %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  2617.           %                                                              %
  2618.           %   Dir: H. Rudy Ramsey Personal Center -- RUDY                %
  2619.           %   Drive: C   View: Document  Class: ltr   Object:            %
  2620.           %  =Space==Time==Plans==WiP====View==Class==Object==Action===  %
  2621.           %  |                                                           %
  2622.           %  |  Views  Class   Objects                                   %
  2623.           %  | ALL      ALL   cramer.ltr                                 %
  2624.           %  | Archive  apt                                              %
  2625.           %  | Chess    doc                                              %
  2626.           %  | Document fmt                                              %
  2627.           %  | Finance  hrr                                              %
  2628.           %  | Fonts    lab                                              %
  2629.           %  | Graphics ltr                                              %
  2630.           %  | Incontxt mk                                               %
  2631.           %  | Letters  ris                                              %
  2632.           %  | Messages txt                                              %
  2633.           %  | Programs wdx                                              %
  2634.           %  | Source                                                    %
  2635.           %  | Tapcis                                                    %
  2636.           %  | Ventura                                                   %
  2637.           %  | Writing                                                   %
  2638.           %  | Xref                                                      %
  2639.           %  |                                                           %
  2640.           %  |                                                           %
  2641.           %  +- InContext Work Environment Manager ------ Mode: Objects  %
  2642.           %  ==Select=command=(M=for=more),=or=select=any=item=on=main=  %
  2643.           %                                                              %
  2644.           %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  2645.  
  2646.       If  the information shown in the Main Window is not enough for you to
  2647.       select the appropriate view or class, you  can  use  the  "Views"  or
  2648.       "Class"  command.  The figure below shows the Views Display, which is
  2649.       displayed when you select the "Views" command, either by  typing  'v'
  2650.       or by selecting the word "View" in the Command Bar. The Views Display
  2651.       shows  both  the  brief  name and a longer description of each of the
  2652.       currently defined views. These  descriptions,  and  the  views  them-
  2653.  
  2654.  
  2655.    InContxt.DOC                      -40-                      January 1993
  2656.  
  2657.  
  2658.  
  2659.  
  2660.    InContext User Guide                                   OBJECTS AND VIEWS
  2661.  
  2662.  
  2663.       selves, are under your control, as shown in the next section.
  2664.  
  2665.               %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  2666.               %                                                     %
  2667.               %        ==View====                                   %
  2668.               %  ===================================@Edit==@Help==  %
  2669.               %  |                                               |  %
  2670.               %  | Brief Name     Your Description               |  %
  2671.               %  |  ALL #        All object classes              |  %
  2672.               %  |  Archive      Archive files                   |  %
  2673.               %  |  Chess        Chess games                     |  %
  2674.               %  |  Document     Document preparation view       |  %
  2675.               %  |  Finance      Financial management view       |  %
  2676.               %  |  Fonts        Laser printer fonts             |  %
  2677.               %  |  Graphics     Graphical objects               |  %
  2678.               %  |  Incontxt     InContext control artifacts     |  %
  2679.               %  |  Letters      Letters on various letterhead   |  %
  2680.               %  |  Messages     CompuServe messages             |  %
  2681.               %  |  Programs     Executable programs             |  %
  2682.               %  |  Source       Source programming view         |  %
  2683.               %  |  Tapcis       CIS- and TAPCIS-related stuff   |  %
  2684.               %  |  Ventura      Ventura Publisher artifacts     |  %
  2685.               %  |  Writing      Source author view              |  %
  2686.               %  |  Xref         Cross-references, maps, etc.    |  %
  2687.               %  +- ALL ---------------------------------- 1/16 -+  %
  2688.               %                                                     %
  2689.               %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  2690.  
  2691.  
  2692.    Defining the Views
  2693.    ------------------
  2694.  
  2695.       The  list  of  views,  and their definitions, are entirely under your
  2696.       control. You will probably find the views capability most helpful  if
  2697.       you use it to group together classes that are either:
  2698.  
  2699.          o  similar in type (e.g., "doc", "ltr", and "txt" are probably all
  2700.             ordinary text files)
  2701.  
  2702.          o  used together (e.g., the "wk1" and "prn" files used by Lotus 1-
  2703.             2-3  are  quite  different  classes,  but  are both involved in
  2704.             spreadsheet use).
  2705.  
  2706.  
  2707.  
  2708.  
  2709.  
  2710.  
  2711.  
  2712.  
  2713.  
  2714.    InContxt.DOC                      -41-                      January 1993
  2715.  
  2716.  
  2717.  
  2718.  
  2719.    InContext User Guide                                   OBJECTS AND VIEWS
  2720.  
  2721.  
  2722.                     %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  2723.                     %                                         %
  2724.                     %  Archive -- Archive files               %
  2725.                     %     arc                                 %
  2726.                     %     lzh                                 %
  2727.                     %     zip                                 %
  2728.                     %  Document -- Document preparation view  %
  2729.                     %     doc                                 %
  2730.                     %     fmt                                 %
  2731.                     %     lab                                 %
  2732.                     %     ltr                                 %
  2733.                     %     txt                                 %
  2734.                     %  Graphics -- Graphical object           %
  2735.                     %     gif                                 %
  2736.                     %     img                                 %
  2737.                     %     pcx                                 %
  2738.                     %  Fonts -- Laser printer fonts           %
  2739.                     %     sfl                                 %
  2740.                     %     sfp                                 %
  2741.                     %     usl                                 %
  2742.                     %     usp                                 %
  2743.                     %  Programs -- Executable programs        %
  2744.                     %     bat                                 %
  2745.                     %     com                                 %
  2746.                     %     exe                                 %
  2747.                     %                                         %
  2748.                     %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  2749.  
  2750.       The figure above illustrates a few possible views, with their defini-
  2751.       tions. In some cases, these view definitions are probably appropriate
  2752.       for you just as they are. For  example,  the  "Programs"  (executable
  2753.       programs)  view  is  defined to include all objects of classes "bat",
  2754.       "com", and "exe". MS-DOS dictates that only  these  classes  are  ex-
  2755.       ecutable programs. In other cases, though, your view definitions will
  2756.       be  dictated  by the way you use your computer. For example, the par-
  2757.       ticular classes that you might choose to include in a "document" view
  2758.       will be largely determined by the particular word processing software
  2759.       you use.
  2760.  
  2761.       To change the view definitions, simply select the Views  Display  and
  2762.       then  select the "Edit" command by pressing Function Key F2. You will
  2763.       see an editable view list. To  edit  a  view  definition,  place  the
  2764.       cursor  on  the  relevant  line  and  press  F2  again. You'll see an
  2765.       editable list of class names. For more  information  on  use  of  the
  2766.       editing  facilities,  refer  to "Editing Dictionaries" in the earlier
  2767.       chapter, Interacting with InContext".
  2768.  
  2769.  
  2770.  
  2771.  
  2772.  
  2773.    InContxt.DOC                      -42-                      January 1993
  2774.  
  2775.  
  2776.  
  2777.  
  2778.    InContext User Guide                                   OBJECTS AND VIEWS
  2779.  
  2780.  
  2781.    Selecting an Object (or Multiple Objects)
  2782.    -----------------------------------------
  2783.  
  2784.       When you locate the object  you're  interested  in,  you  can  simply
  2785.       select  it directly from the Main Window. This will cause the actions
  2786.       associated with the object's class to  be  available  for  selection.
  2787.       Selecting  the  object  "videotap.doc",  however, might result in the
  2788.       following list of available actions. These actions are those  defined
  2789.       for  a  "doc" object, including edit, spellchk (check spelling), etc.
  2790.       By simply selecting one of those with the mouse or keyboard, you  can
  2791.       perform that action on the object.
  2792.  
  2793.                                    %%%%%%%%%%%%%%
  2794.                                    %            %
  2795.                                    %  Actions   %
  2796.                                    %  Edit      %
  2797.                                    %  View      %
  2798.                                    %  Archive   %
  2799.                                    %  Copy      %
  2800.                                    %  Delete    %
  2801.                                    %  Print     %
  2802.                                    %  Rename    %
  2803.                                    %  Take      %
  2804.                                    %  Spellchk  %
  2805.                                    %            %
  2806.                                    %%%%%%%%%%%%%%
  2807.  
  2808.       You  can  also  select multiple objects, by holding down the shift or
  2809.       Ctrl key as you make the selections. Be  careful  not  to  select  an
  2810.       object  without  using the shift or Ctrl key, as that will cancel the
  2811.       multiple-object "tagging".
  2812.  
  2813.       The following actions are  available  when  a  group  of  objects  is
  2814.       selected  (i.e.,  when  no  object,  or  multiple  objects, have been
  2815.       selected). For example, these actions  include  "View-all"  (look  at
  2816.       them all, with no possibility of changing them) and "Del-all" (delete
  2817.       the whole set, after getting user verification).
  2818.  
  2819.                                    %%%%%%%%%%%%%%
  2820.                                    %            %
  2821.                                    %  Actions   %
  2822.                                    %  Edit-all  %
  2823.                                    %  View-all  %
  2824.                                    %  Arc-all   %
  2825.                                    %  Copy-all  %
  2826.                                    %  Del-all   %
  2827.                                    %  Move-all  %
  2828.                                    %            %
  2829.                                    %%%%%%%%%%%%%%
  2830.  
  2831.  
  2832.    InContxt.DOC                      -43-                      January 1993
  2833.  
  2834.  
  2835.  
  2836.  
  2837.    InContext User Guide                                   OBJECTS AND VIEWS
  2838.  
  2839.  
  2840.    The Objects Display
  2841.    -------------------
  2842.  
  2843.       Sometimes,  the  "Objects"  area  of the Main Window is insufficient,
  2844.       either because it doesn't have enough space  or  because  it  doesn't
  2845.       provide  enough  information  about  each  object. In such cases, the
  2846.       Objects Command and its associated Objects Display are used. This  is
  2847.       invoked  by  typing 'o', or by placing the cursor on "Objects" in the
  2848.       Command Bar and pressing ENTER or the left  mouse  button.  The  left
  2849.       portion of the resulting display is shown below.
  2850.  
  2851.          %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  2852.          %                                                               %
  2853.          %                                      ==Object=(Full=Mode,=Cl  %
  2854.          %  ========Modes:=@Full=@Brief===Orders:=@Class=@Name=@Size=@D  %
  2855.          %                                                               %
  2856.          %    Filename       Size Attr   Date    Time    Description     %
  2857.          %    design.doc    80867 a...  9/10/92  12:40 Basic design, Ro  %
  2858.          %  electric.doc  # 22831 a...  9/14/92  15:00 Electrical wirin  %
  2859.          %  plumbing.doc    22831 a...  9/15/92  12:42 Plumbing plan     %
  2860.          %                                                               %
  2861.          %                                                               %
  2862.          %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  2863.  
  2864.       This  display contains one line of information for each object in the
  2865.       current directory (or view, or  class,  if  you've  selected  these).
  2866.       Consider  the second line (where the cursor is), which represents the
  2867.       "electric.doc" object. This line shows the brief name of the  object,
  2868.       its description "Electrical wiring plan", and its size (22831 bytes).
  2869.       It  indicates  the  DOS  file  attributes  of  the  object  (see next
  2870.       paragraph). It also indicates when the object was last updated  (3:00
  2871.       P.M. on 9/14/92).
  2872.  
  2873.       The  DOS  attributes  are displayed as four characters, each of which
  2874.       may be a letter indicating a particular property of the object, or  a
  2875.       period  ('.') indicating that the object does not have that property.
  2876.       The properties are:
  2877.  
  2878.          a  archive bit set; this means that  the  file  has  been  updated
  2879.             since  the  last  time  you did a system backup to tape or dis-
  2880.             kettes.
  2881.  
  2882.          h  hidden file; this file is marked so  as  to  be  "hidden"  from
  2883.             ordinary  MS-DOS  operations.  InContext allows you to see such
  2884.             files if you select the appropriate option. See  "Miscellaneous
  2885.             Options".
  2886.  
  2887.          s  system  file; ordinarily, this applies only to two files in the
  2888.             root directory. You should leave these objects alone.
  2889.  
  2890.  
  2891.    InContxt.DOC                      -44-                      January 1993
  2892.  
  2893.  
  2894.  
  2895.  
  2896.    InContext User Guide                                   OBJECTS AND VIEWS
  2897.  
  2898.  
  2899.          r  read-only; this object cannot be altered without  first  reset-
  2900.             ting this attribute.
  2901.  
  2902.  
  2903.       Because  it  has  no special attributes (its attribute description is
  2904.       "a..."), "electric.doc"  is  just  an  ordinary  file.  It  has  been
  2905.       modified since the last disk backup.
  2906.  
  2907.  
  2908.       Editing Object Properties
  2909.       -------------------------
  2910.  
  2911.       The  Objects  Display  has  an  Edit mode, which allows you to select
  2912.       particular objects whose properties you want to change. Selecting  an
  2913.       object  while  in  this mode will result in a display like that shown
  2914.       below.
  2915.  
  2916.            %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  2917.            %                                                           %
  2918.            %                                       ==Object=(Full=Mod  %
  2919.            %  =Edit=Properties=of=Object="design.doc"================  %
  2920.            %  |                                                        %
  2921.            %  |        < >   Sep 1992   < >             Tuesday, Sep   %
  2922.            %  |         S  M  T  W  T  F  S        12a....   6 ....    %
  2923.            %  |               1  2  3  4  5         1 ....   7 ....    %
  2924.            %  |         6  7  8  9 10 11 12         2 ....   8 ....    %
  2925.            %  |        13 14 15 16 17 18 19         3 ....   9 ....    %
  2926.            %  |        20 21 22 23 24 25 26         4 ....  10 ....    %
  2927.            %  |        27 28 29 30                  5 ....  11 ....    %
  2928.            %  |                                                        %
  2929.            %  |                                                        %
  2930.            %  |  Name: design==.doc    Descript: Basic=design,=Rover'  %
  2931.            %  |                                                        %
  2932.            %  |  Size:   80867     Date: 9/10/92=     Time: 12:40=     %
  2933.            %  |                                                        %
  2934.            %  |  Attributes: archive                                   %
  2935.            %  |              hidden                                    %
  2936.            %  |              system                                    %
  2937.            %  |              read only                                 %
  2938.            %  |                                                        %
  2939.            %                                                           %
  2940.            %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  2941.  
  2942.       While viewing this display, you can change  the  object  name  and/or
  2943.       class  (filename  prefix  and/or  extension). You can add, remove, or
  2944.       edit the object description. You can change the date/time information
  2945.       on the file, either by editing the date/time fields or by selecting a
  2946.       date or time from the upper portion of  the  display.  You  can  also
  2947.       change the MS-DOS file attributes associated with the file; selecting
  2948.  
  2949.  
  2950.    InContxt.DOC                      -45-                      January 1993
  2951.  
  2952.  
  2953.  
  2954.  
  2955.    InContext User Guide                                   OBJECTS AND VIEWS
  2956.  
  2957.  
  2958.       one of the indicated attributes will toggle its value.
  2959.  
  2960.       NOTE:  The  object  description  information  is kept in a form fully
  2961.       compatible  with  the   excellent   4DOS   program   (a   COMMAND.COM
  2962.       replacement).  If  you provide a description for any object, a hidden
  2963.       file named DESCRIPT.ION will be created in the directory, and used by
  2964.       both InContext and (if you use it) 4DOS to preserve  object  descrip-
  2965.       tion information.
  2966.  
  2967.       Along  with  these changes, we've added the ability to display hidden
  2968.       files. See the section on  Miscellaneous  Options,  below,  for  more
  2969.       information.
  2970.  
  2971.  
  2972.       Object Display Formats
  2973.       ----------------------
  2974.       Some  of  the  displays  have  alternative display formats or layouts
  2975.       which you may occasionally prefer to the standard format. In general,
  2976.       you can  select  any  the  available  display  formats  (also  called
  2977.       "Modes") by picking its name from the Command Bar.
  2978.  
  2979.       The  Objects  Display  has  an alternative format, called the "Brief"
  2980.       mode. This display format simply omits  all  information  except  the
  2981.       brief  names  of  the objects, in order to display as many objects as
  2982.       possible. Since you can also page or scroll up an down in the window,
  2983.       this display is effectively unlimited in capacity, whereas  the  Main
  2984.       Window  can  only  show  a  limited  number  of objects and allows no
  2985.       scrolling or paging.
  2986.  
  2987.  
  2988.       Object Sort Orders
  2989.       ------------------
  2990.       Just as there are alternative display formats, there are also  alter-
  2991.       native  sorting  orders  available  for  some displays, including the
  2992.       Objects Display. You can choose the various sort orders by  selecting
  2993.       their names from the Command Bar. The available object orders are:
  2994.  
  2995.          Class  The  default  order  displays  the  objects by class in al-
  2996.                 phabetical order. Within  a  class,  the  objects  are  al-
  2997.                 phabetically ordered by name.
  2998.  
  2999.          Name   The  "Name"  order  is  alphabetical by name, regardless of
  3000.                 class.
  3001.  
  3002.          Size   Objects are displayed in inverse order by size, so that the
  3003.                 largest object is first, and the smallest is last.
  3004.  
  3005.          Date   The "Date" order is  in  inverse  order  by  date  of  last
  3006.                 change, with the most recently changed file first.
  3007.  
  3008.  
  3009.    InContxt.DOC                      -46-                      January 1993
  3010.  
  3011.  
  3012.  
  3013.  
  3014.    InContext User Guide                                   OBJECTS AND VIEWS
  3015.  
  3016.  
  3017.        
  3018.                                    +-------+
  3019.                                    | SPACE |
  3020.                                    +-------+
  3021.  
  3022.  
  3023.  
  3024.    Spatial Organization
  3025.    --------------------
  3026.  
  3027.       Properly  used,  the  directory  structure on your disk(s) provides a
  3028.       very powerful means of organizing your  electronic  work  space.  The
  3029.       directory structure is conveniently thought of as a structured SPACE,
  3030.       just  like  the space in your office, workshop, or kitchen. Each part
  3031.       of such a space contains materials that are relevant to the work done
  3032.       there. To do different kinds of work, you MOVE from place to place.
  3033.  
  3034.       In the electronic world, as in the physical world, the organized  use
  3035.       of  space  can  help you focus your attention on the work at hand. In
  3036.       most cases, you will gain real benefits if you:
  3037.  
  3038.          o  set up a separate directory for each of your significant  func-
  3039.             tions.
  3040.  
  3041.          o  put  in  each  directory  only  those materials relevant to the
  3042.             function performed there.
  3043.  
  3044.          o  use subdirectories whenever a function has separate parts whose
  3045.             materials need to be kept separate.
  3046.  
  3047.  
  3048.       MS-DOS provides relatively poor support for  actually  moving  around
  3049.       such  a  space  or for managing materials in this way. Unfortunately,
  3050.       many application programs make  this  way  of  organizing  even  more
  3051.       difficult.  For  example,  many  word processors assume that you will
  3052.       keep all your documents  in  a  directory  that's  dedicated  to  the
  3053.       PROGRAM.  Similarly,  users  of  Lotus  1-2-3  are encouraged, by the
  3054.       program, to keep all their spreadsheets together in a 123  directory.
  3055.       This  is  rather unlike the way you operate in the physical world, in
  3056.       which you most likely keep TOGETHER your letter to the IRS  (a  docu-
  3057.       ment) and the spreadsheets you used to prepare your tax return.
  3058.  
  3059.       InContext  will operate quite satisfactorily either way, but it gives
  3060.       you the power to organize your space  by  function,  rather  than  by
  3061.       program,  if you wish. It does this in part by allowing you to define
  3062.       object class behavior so that you're no longer so  dependent  on  the
  3063.       assumptions of the programs you run. It also makes it very convenient
  3064.       for you to move around from place to place.
  3065.  
  3066.  
  3067.  
  3068.    InContxt.DOC                      -47-                      January 1993
  3069.  
  3070.  
  3071.  
  3072.  
  3073.    InContext User Guide                                               SPACE
  3074.  
  3075.  
  3076.    Moving from Place to Place
  3077.    --------------------------
  3078.  
  3079.       First,  let's  review  what  it means, in using InContext, to be in a
  3080.       particular place. In the following display, the  Context  Area  shows
  3081.       you  that  you're  currently  in  the directory C:\ALICE\COUNCIL. The
  3082.       display shows some of the objects in this directory.
  3083.  
  3084.                    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  3085.                    %                                           %
  3086.                    %   Dir: C:\ALICE\COUNCIL                   %
  3087.                    %   Drive: C   View: ALL       Class: doc   %
  3088.                    %  =Space==Time==Plans==WiP====View==Class  %
  3089.                    %  |                                     |  %
  3090.                    %  |  Views  Class   Objects   Actions   |  %
  3091.                    %  | ALL      ALL   calend.doc View-all  |  %
  3092.                    %  | Archive  doc  committ.doc Edit-all  |  %
  3093.                    %  | Chess    fmt counclst#doc Arc-all   |  %
  3094.                    %  | Document ltr  counrep.doc Copy-all  |  %
  3095.                    %  | Finance       counrul.doc Del-all   |  %
  3096.                    %  | Fonts         rulemin.doc Move-all  |  %
  3097.                    %  | Graphics                            |  %
  3098.                    %  | Incontxt                            |  %
  3099.                    %  | Letters                             |  %
  3100.                    %  | Messages                            |  %
  3101.                    %                                           %
  3102.                    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  3103.  
  3104.       There are several different ways to move from one  place  (directory)
  3105.       to another, as discussed in the following sections.
  3106.  
  3107.  
  3108.       The Space Command
  3109.       -----------------
  3110.       One  way  of  moving  around  is  the  Space Display. This display is
  3111.       brought up by selecting "Space" from the Command Bar (using mouse, or
  3112.       using cursor keys and ENTER or by  typing  "S").  The  Space  Display
  3113.       offers  various  ways of looking around your space. The "Tree" format
  3114.       is shown below. In this format, the hierarchic structure of your disk
  3115.       is shown in a graphical tree-like display.
  3116.  
  3117.  
  3118.  
  3119.  
  3120.  
  3121.  
  3122.  
  3123.  
  3124.  
  3125.  
  3126.  
  3127.    InContxt.DOC                      -48-                      January 1993
  3128.  
  3129.  
  3130.  
  3131.  
  3132.    InContext User Guide                                               SPACE
  3133.  
  3134.  
  3135.           %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  3136.           %                                                              %
  3137.           %   Dir: Alice Ramsey Personal Center -- ALICE                 %
  3138.           %   Drive: C   View: Document  Class: doc   Object: afhsmin.d  %
  3139.           %  =Space=(Tree=Mode)=====                                     %
  3140.           %  ======================================Modes:=@Tree=@Name=@  %
  3141.           %  |     Directory                    Brief Name   Your Descr  %
  3142.           %  | C:                                                        %
  3143.           %  | +--ALICE                           Alice     Alice Ramse  %
  3144.           %  | |  +--COUNCIL      #                         Legislative  %
  3145.           %  | |  +--LWVADS.VPP                                          %
  3146.           %  | +--BBS                             Bbs       BBS Center   %
  3147.           %  | |  +--BACKUP                                              %
  3148.           %  | +--BRIEF                                                  %
  3149.           %  | |  +--BACKUP                                              %
  3150.           %  | |  +--HELP                                                %
  3151.           %  | |  +--MACROS                                              %
  3152.           %  | +--CHRIS                                     Chris Ramse  %
  3153.           %                                                              %
  3154.           %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  3155.  
  3156.       In this figure, you can see that the current  directory,  "C:\ALICE",
  3157.       has  the  text  description  "Alice  Ramsey Personal Center", and the
  3158.       brief name "ALICE". (A later section will describe how and  why  such
  3159.       descriptions  are  attached  to  directories.)  To select a different
  3160.       directory, just select the desired directory.  For  example,  in  the
  3161.       display  above,  the  cursor  is on the directory "C:\ALICE\COUNCIL",
  3162.       which also has the description, "Legislative Council Center". If  the
  3163.       left mouse button or the ENTER key is pressed, we will move into that
  3164.       directory.
  3165.  
  3166.       The  Space  Display  offers  five  different formats, or MODES. These
  3167.       modes are selectable from the Command Bar. The available modes are:
  3168.  
  3169.          Tree     Shown in the figure just above, this  mode  displays  the
  3170.                   directory structure in the form of a tree.
  3171.  
  3172.          Bytes    This mode shows the directory tree, but presents informa-
  3173.                   tion  about  disk  usage,  by individual directory and by
  3174.                   subtree.
  3175.  
  3176.          Drive    This mode allows you to access other disk drives.
  3177.  
  3178.          Name     This mode displays the directories in alphabetical order,
  3179.                   by name.
  3180.  
  3181.          Subdirs  This mode displays only  subdirectories  of  the  current
  3182.                   directory.
  3183.  
  3184.  
  3185.  
  3186.    InContxt.DOC                      -49-                      January 1993
  3187.  
  3188.  
  3189.  
  3190.  
  3191.    InContext User Guide                                               SPACE
  3192.  
  3193.  
  3194.       The Go Display
  3195.       --------------
  3196.       A  look back at the previous figure will show that some of the direc-
  3197.       tories displayed there  have  "Brief  Names"  associated  with  them.
  3198.       Whenever  such  names  are defined, the names show up on the Go list.
  3199.       That list can be accessed by selecting the Go Command from  the  Com-
  3200.       mand  Bar. In the Go Display below, for example, you can see that the
  3201.       names "Alice", "Finance", and "Personal" have been assigned  to  par-
  3202.       ticular  directories.  You  can  move  to any of those directories by
  3203.       simply selecting its name from this display.
  3204.  
  3205.               %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  3206.               %                                                     %
  3207.               %  -------------------------------------==Go====----  %
  3208.               %  ==========================================@Help==  %
  3209.               %  |                                               |  %
  3210.               %  | Brief Name     Your Description               |  %
  3211.               %  |  Alice #      Alice Ramsey Personal Center    |  %
  3212.               %  |  Bbs          BBS Center                      |  %
  3213.               %  |  Betatest     Beta Test Center                |  %
  3214.               %  |  Chess        Chess Center                    |  %
  3215.               %  |  Diskdocs     InContext Diskette Documents    |  %
  3216.               %  |  Ems          Newtown Volunteer Ambulance Co  |  %
  3217.               %  |  Finance      Ramsey Family Finance Center    |  %
  3218.               %  |  Genealog     Genealogy Center                |  %
  3219.               %  |  Hrredit      HRR Editor Library              |  %
  3220.               %  |  Import       Import Center                   |  %
  3221.               %  |  Library      HRR Function Libraries          |  %
  3222.               %  |  Misctool     HRR Miscellaneous Tools         |  %
  3223.               %  |  Objects      InContext Artifacts             |  %
  3224.               %  |  Personal     H. Rudy Ramsey Personal Center  |  %
  3225.               %  |  Ramsisle     Rams' Island Software           |  %
  3226.               %  |  Swdev        Software Development Center     |  %
  3227.               %  +-----------------------------------------------+  %
  3228.               %                                                     %
  3229.               %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  3230.  
  3231.       This display shows both the brief name and the text  description  for
  3232.       those directories to which you have given such properties. By keeping
  3233.       your  frequently  used directories on this list, you make it possible
  3234.       to move around very rapidly among  these  places.  You  can  use  the
  3235.       cursor, or the first letter of the desired brief name, to move to any
  3236.       of the directories on this list.
  3237.  
  3238.       The brief Go names may also be displayed as part of the Main Display,
  3239.       if you have chosen to do so. In that case, they appear like this:
  3240.  
  3241.  
  3242.  
  3243.  
  3244.  
  3245.    InContxt.DOC                      -50-                      January 1993
  3246.  
  3247.  
  3248.  
  3249.  
  3250.    InContext User Guide                                               SPACE
  3251.  
  3252.  
  3253.                                    %%%%%%%%%%%%%%
  3254.                                    %            %
  3255.                                    %    Go      %
  3256.                                    %  Alice #   %
  3257.                                    %  Bbs       %
  3258.                                    %  Betatest  %
  3259.                                    %  Chess     %
  3260.                                    %  Diskdocs  %
  3261.                                    %  Ems       %
  3262.                                    %  Finance   %
  3263.                                    %  Genealog  %
  3264.                                    %  Hrredit   %
  3265.                                    %  Import    %
  3266.                                    %  Library   %
  3267.                                    %  Misctool  %
  3268.                                    %  Objects   %
  3269.                                    %  Personal  %
  3270.                                    %  Ramsisle  %
  3271.                                    %  Swdev     %
  3272.                                    %  Tapcis    %
  3273.                                    %  Userguid  %
  3274.                                    %            %
  3275.                                    %%%%%%%%%%%%%%
  3276.  
  3277.  
  3278.       Editing Directory Information
  3279.       -----------------------------
  3280.       To  change  the  brief  names  and descriptions for your directories,
  3281.       simply select the Space Display, and  then  select  "Edit"  from  the
  3282.       Command  Bar  (or  press  F2, which is the Edit key). Then select the
  3283.       directory whose properties you would like to edit.  You  will  see  a
  3284.       display like the following.
  3285.  
  3286.             %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  3287.             %                                                          %
  3288.             %  =Space=(Tree=Mode)=====                                 %
  3289.             %  =Edit=Properties=of=Directory="ALICE"=================  %
  3290.             %  |                                                       %
  3291.             %  |  Name: ALICE        Date: 4/30/92       Time: 16:00   %
  3292.             %  |                                                       %
  3293.             %  |  Brief Name: Alice===   Descript: Alice=Ramsey=Perso  %
  3294.             %  |                                                       %
  3295.             %  |  Path: C:\ALICE=====================================  %
  3296.             %  |                                                       %
  3297.             %                                                          %
  3298.             %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  3299.  
  3300.       The  "Brief  Name",  "Description", and "Path" fields are editable in
  3301.       this display. For more information about editing such  displays,  see
  3302.  
  3303.  
  3304.    InContxt.DOC                      -51-                      January 1993
  3305.  
  3306.  
  3307.  
  3308.  
  3309.    InContext User Guide                                               SPACE
  3310.  
  3311.  
  3312.       the discussion on "Editing" in the earlier chapter, "Interacting with
  3313.       InContext".  You  will  probably find it most helpful to assign brief
  3314.       names to only those directories in which you frequently work, and  to
  3315.       use unique starting letters for these directories.
  3316.  
  3317.       Changing  the  "Path" field has the effect of moving the directory to
  3318.       another location in the directory tree.  Naturally,  the  directory's
  3319.       contents and subdirectories move with it.
  3320.  
  3321.  
  3322.  
  3323.  
  3324.  
  3325.  
  3326.  
  3327.  
  3328.  
  3329.  
  3330.  
  3331.  
  3332.  
  3333.  
  3334.  
  3335.  
  3336.  
  3337.  
  3338.  
  3339.  
  3340.  
  3341.  
  3342.  
  3343.  
  3344.  
  3345.  
  3346.  
  3347.  
  3348.  
  3349.  
  3350.  
  3351.  
  3352.  
  3353.  
  3354.  
  3355.  
  3356.  
  3357.  
  3358.  
  3359.  
  3360.  
  3361.  
  3362.  
  3363.    InContxt.DOC                      -52-                      January 1993
  3364.  
  3365.  
  3366.  
  3367.  
  3368.    InContext User Guide                                 CLASSES AND ACTIONS
  3369.  
  3370.  
  3371.        
  3372.                             +---------------------+
  3373.                             | CLASSES AND ACTIONS |
  3374.                             +---------------------+
  3375.  
  3376.  
  3377.  
  3378.    The Basics of Class Definition
  3379.    ------------------------------
  3380.  
  3381.  
  3382.       The  basic ideas of objects, classes, and actions have been discussed
  3383.       in previous chapters. This chapter tells you how to define  your  own
  3384.       object  CLASSES,  and  how  to change the definitions of the existing
  3385.       ones. If you are just becoming familiar with InContext for the  first
  3386.       time,  you  might  want  to skip this chapter and return to it later,
  3387.       when you feel the need to operate at this level.
  3388.  
  3389.       There are two kinds of information which may be involved in  defining
  3390.       an   object   class.   These  are  called  "action  definitions"  and
  3391.       "templates".
  3392.  
  3393.       An ACTION DEFINITION specifies what actions can be performed  with  a
  3394.       particular  type  of  object.  For each action, the action definition
  3395.       specifies the detailed procedure required to execute it. This  proce-
  3396.       dure  is  similar, in some respects, to a batch file, but may be more
  3397.       sophisticated. Thus, the action definitions associated with a  "docu-
  3398.       ment"  class  might  include an "edit" action, and might define it in
  3399.       terms of invocation of a text editor. Whenever you do  anything  with
  3400.       an object using InContext, an action definition is being used. If the
  3401.       object  is  of  a defined class, then the action definitions for that
  3402.       class are used. Otherwise, a default ("common") set of action defini-
  3403.       tions is used.
  3404.  
  3405.       For many classes that you will work with, the default action  defini-
  3406.       tion  may  be  enough.  You  will  undoubtedly want to create special
  3407.       action definitions for some classes, however.
  3408.  
  3409.       An object class may also have a  TEMPLATE.  Whenever  you  create  an
  3410.       object  using  InContext's  "Create  Object" command (or function key
  3411.       F9), a template is being  used.  For  example,  you  might  define  a
  3412.       template for a "letter" class, complete with your name and address at
  3413.       the top. Then, whenever you use InContext to create an object of that
  3414.       class,  the object will contain your letterhead right from the moment
  3415.       of its creation. The template is simply copied to make  the  new  ob-
  3416.       ject,  so  this  method only works for some kinds of objects. You can
  3417.       use this method, for example, to define special classes of documents,
  3418.       spreadsheets, and so on. Some  kinds  of  objects  (e.g.,  executable
  3419.       programs,  such  as  "exe" and "com") simply don't work this way, and
  3420.  
  3421.  
  3422.    InContxt.DOC                      -53-                      January 1993
  3423.  
  3424.  
  3425.  
  3426.  
  3427.    InContext User Guide                                 CLASSES AND ACTIONS
  3428.  
  3429.  
  3430.       must be created using other tools and procedures.
  3431.  
  3432.       Action definitions  and  templates  operate  entirely  independently.
  3433.       Thus,  you  can  define  a class using only a template if you plan to
  3434.       just use the default action definition to work with the objects  once
  3435.       they are created. More commonly, you can define a class using only an
  3436.       action  definition  if you don't intend to create new objects of this
  3437.       type, or if they can be created as empty files.
  3438.  
  3439.  
  3440.    Creating and Modifying Templates
  3441.    --------------------------------
  3442.  
  3443.  
  3444.       As discussed in the "Installation and Setup" chapter, the files  that
  3445.       control  the behavior of InContext are installed in a special "InCon-
  3446.       text  directory".  The  usual  pathname   for   this   directory   is
  3447.       "C:\INCONTXT",  but  it  can  be  something else if you choose. Among
  3448.       other things, this directory contains all the  class  templates  (ob-
  3449.       jects  whose  class  name  is  "tpl")  and all the action definitions
  3450.       (objects whose class name is "act"). The templates may be visible  in
  3451.       the  directory,  or they may be compressed into a single archive file
  3452.       (template.lzh). Similarly, the action definitions may be visible,  or
  3453.       they may be compressed into an archive file (actions.lzh).
  3454.  
  3455.       To  create  a template for a class, you simply prepare a file so that
  3456.       it has exactly the content you want for newly created objects of  the
  3457.       class.  Then  copy  or  move  the  file into the InContext directory,
  3458.       giving it the appropriate template name. Suppose, for  example,  that
  3459.       you want to prepare a monthly expense record for income tax purposes.
  3460.       Since  these  expense records have a special purpose and special con-
  3461.       tent, it is appropriate to define them as a special class  of  object
  3462.       (say  "exp").  You might use Lotus 1-2-3 to set up a spreadsheet with
  3463.       the content you want each new expense record to have.  Then  copy  or
  3464.       move this file into the InContext directory using the name "exp.tpl".
  3465.       This  file  will  then be used as the template for the "exp" (expense
  3466.       record) class. If you choose, you may archive the new template in the
  3467.       "template.lzh" archive, in order to conserve  disk  space.  InContext
  3468.       will  simply  extract  it each time it's needed to create a new "exp"
  3469.       object.
  3470.  
  3471.  
  3472.    Action Lists
  3473.    ------------
  3474.  
  3475.       Behind the scenes, there are actually several different action  lists
  3476.       that  determine  what  actions  are  available  under particular cir-
  3477.       cumstances. Each of these is a list of action definitions.
  3478.  
  3479.  
  3480.  
  3481.    InContxt.DOC                      -54-                      January 1993
  3482.  
  3483.  
  3484.  
  3485.  
  3486.    InContext User Guide                                 CLASSES AND ACTIONS
  3487.  
  3488.  
  3489.          Common  Applies to all single objects, regardless  of  class.  The
  3490.                  common  list  includes  actions like "Copy", "Delete", and
  3491.                  "Rename", which pretty much mean the same  thing  for  all
  3492.                  objects.
  3493.  
  3494.          Class   Defines  the  actions  that  can  be performed on a single
  3495.                  object of a specified class. These actions are in addition
  3496.                  to the common actions, though they may  also  override  or
  3497.                  cancel those actions.
  3498.  
  3499.          Group   Determines  what  actions  can  be performed on a group of
  3500.                  objects.
  3501.  
  3502.  
  3503.  
  3504.       The Common Action List
  3505.       ----------------------
  3506.       The common action list contains those actions that  apply  to  single
  3507.       objects,  regardless of class. These actions can be overridden by the
  3508.       action list of an individual class, but for the most part, this  list
  3509.       should  contain  those  actions  that apply uniformly to all objects.
  3510.       Like all the action lists, this list is under your control,  and  can
  3511.       be  changed  to  suit your needs. As issued by Rams' Island Software,
  3512.       though, this list contains the following actions:
  3513.  
  3514.          Edit     In the common action list, this action asks the  user  to
  3515.                   verify that the object is an ASCII text file. If the user
  3516.                   says "No", the procedure is aborted, while a "Yes" answer
  3517.                   invokes the preferred text editor (by default, the inter-
  3518.                   nal editor) on the object.
  3519.  
  3520.                   If  you substitute your own editor, and that editor won't
  3521.                   do damage if invoked on a non-text  file,  you  may  also
  3522.                   wish to eliminate the question about ASCII files.
  3523.  
  3524.                   In  any  event,  whenever you create an action list for a
  3525.                   specific class, you will want to override this action  by
  3526.                   defining  an  "Edit"  action  there. An action definition
  3527.                   there which lacks a procedure would cause "Edit"  not  to
  3528.                   appear on the displayed action list at all.
  3529.  
  3530.          View     This  action  allows  any  object  to  be viewed, without
  3531.                   possibility of modification. As currently provided,  this
  3532.                   action is set up to use InContext's internal file viewer.
  3533.                   You  may  choose to substitute some other viewer, such as
  3534.                   Vern Buerg's LIST program.  In  any  event,  this  action
  3535.                   should be overridden in individual class definitions when
  3536.                   appropriate.  Thus,  to  "View" a graphical image, an ap-
  3537.                   propriate image viewer should be used, rather than a text
  3538.  
  3539.  
  3540.    InContxt.DOC                      -55-                      January 1993
  3541.  
  3542.  
  3543.  
  3544.  
  3545.    InContext User Guide                                 CLASSES AND ACTIONS
  3546.  
  3547.  
  3548.                   or hex viewer.
  3549.  
  3550.          Archive  This action asks the user for the name of an LHA archive,
  3551.                   and adds the selected object to  that  archive.  A  pause
  3552.                   occurs to allow the user to verify (by reading the output
  3553.                   of  LHA) that the operation was successful. Then the user
  3554.                   is given an opportunity to delete  the  selected  object.
  3555.                   (For information on extending this to archive types other
  3556.                   than LHA, see the ARCHIVER.APP Application Note.)
  3557.  
  3558.          Copy     This  action  invokes  an  internal  file copy operation,
  3559.                   after asking the user for a new filename or  destination.
  3560.                   You may also copy or move objects (without changing their
  3561.                   names)  with  the  "Take"  and "Put" actions (see "Take",
  3562.                   below).
  3563.  
  3564.          Delete   This action allows you  to  delete  an  object,  after  a
  3565.                   verification  step  to  give  you a chance to change your
  3566.                   mind or to avoid accidental deletion.
  3567.  
  3568.          Print    In the common action list, this action asks the  user  to
  3569.                   verify that the object is an ASCII text file. If the user
  3570.                   says "No", the procedure is aborted, while a "Yes" answer
  3571.                   copies  the object to the printer. Whenever you create an
  3572.                   action list for a specific class, you will want to  over-
  3573.                   ride this action by defining a "Print" action there. (For
  3574.                   more information on alternative ways of printing, includ-
  3575.                   ing  the  use  of  a print spooler, see the Usage Example
  3576.                   dealing with printing.)
  3577.  
  3578.          Rename   This action allows you to rename a file. In doing so, you
  3579.                   are free to change its filename prefix and/or its  class,
  3580.                   if appropriate.
  3581.  
  3582.          Take     This  action allows you to pick up an object and carry it
  3583.                   with you as you move to another  directory.  If  you  are
  3584.                   carrying  an  object,  a "Put-obj" action is added to the
  3585.                   list of actions available to you. If you select the "Put-
  3586.                   obj" action, you will be asked whether you want  to  move
  3587.                   it  there  or make a copy there, and the requested opera-
  3588.                   tion will be performed. If you "Take" an object and never
  3589.                   "Put" it anywhere, no damage is done; it remains  in  its
  3590.                   original place.
  3591.  
  3592.  
  3593.  
  3594.  
  3595.  
  3596.  
  3597.  
  3598.  
  3599.    InContxt.DOC                      -56-                      January 1993
  3600.  
  3601.  
  3602.  
  3603.  
  3604.    InContext User Guide                                 CLASSES AND ACTIONS
  3605.  
  3606.  
  3607.       The Action List for an Individual Class
  3608.       ---------------------------------------
  3609.       You  may define whatever actions you like for an individual class. In
  3610.       addition to adding actions not already defined in the  common  action
  3611.       list,  a  class action list can undefine or redefine the actions that
  3612.       are on the common list. This gives you considerable flexibility.
  3613.  
  3614.       Many class action lists will define the "Edit", "View",  and  "Print"
  3615.       actions differently than they are defined in the common action lists.
  3616.       For  example, the Lotus 1-2-3 spreadsheet class "wk1" might be edited
  3617.       using Lotus 1-2-3, and might have no separate view action.
  3618.  
  3619.       To override a definition in the common action  list,  you  need  only
  3620.       provide  a  definition  with the same action name. If that definition
  3621.       has a procedure, it will override the common action, and if it has no
  3622.       procedure, it will cancel that action altogether.
  3623.  
  3624.  
  3625.       The Group Action List
  3626.       ---------------------
  3627.       The group action list defines the actions that can be performed on  a
  3628.       group  of  objects.  Such  a  group is always confined to the current
  3629.       directory, but may consist of all the objects in  the  directory,  or
  3630.       only  those  in  a  particular  view or class. Initially, the actions
  3631.       defined in the group action list include:
  3632.  
  3633.          Edit-all  This action allows you to edit a group of objects. It is
  3634.                    initially set up to use the internal  InContext  editor,
  3635.                    which  handles  only  ASCII text files and does not cur-
  3636.                    rently have a  multiple-file  capability.  It  therefore
  3637.                    asks the user to verify that the objects are text files,
  3638.                    and  then  allows  you to edit the objects sequentially,
  3639.                    one after another (you can stop by pressing Ctrl-C).  If
  3640.                    you  have  a  text editor with multiple-file capability,
  3641.                    you  will  undoubtedly  want  to  change  this  action's
  3642.                    definition to make use of it.
  3643.  
  3644.          View-all  This action allows you to view a group of objects. It is
  3645.                    initially  set  up to use the internal InContext viewer,
  3646.                    which  does   not   currently   have   a   multiple-file
  3647.                    capability.  If  you  have  a  viewer with multiple-file
  3648.                    capability, such as LIST,  you  will  probably  want  to
  3649.                    substitute it in this action.
  3650.  
  3651.          Arc-all   This  action  adds  the  objects to a specified archive,
  3652.                    using the public-domain archive/compression program LHA.
  3653.                    (For information on  extending  this  to  archive  types
  3654.                    other than LHA, see the ARCHIVER.APP Application Note.)
  3655.  
  3656.  
  3657.  
  3658.    InContxt.DOC                      -57-                      January 1993
  3659.  
  3660.  
  3661.  
  3662.  
  3663.    InContext User Guide                                 CLASSES AND ACTIONS
  3664.  
  3665.  
  3666.          Copy-all  This  action asks you where you want the objects copied,
  3667.                    and performs an internal copy operation.
  3668.  
  3669.          Del-all   This action deletes all the objects,  either  one  at  a
  3670.                    time  (with  individual  verification) or as a group, if
  3671.                    you specify that.
  3672.  
  3673.          Move-all  This action asks the user for a directory, verifies  the
  3674.                    user's  intent,  and  then moves all selected objects to
  3675.                    that directory. If you've upgraded  from  a  version  of
  3676.                    InContext  earlier  than V1.10, you may need to add this
  3677.                    action to the Group action list.  See  the  help  system
  3678.                    section dealing with usage examples for details.
  3679.  
  3680.  
  3681.  
  3682.    Editing the Action Lists
  3683.    ------------------------
  3684.  
  3685.       To edit the action definitions, simply select the Action command, and
  3686.       then  select  "Edit" from the Command Bar. This will result in a dis-
  3687.       play like the following.
  3688.  
  3689.       %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  3690.       %                                                                       %
  3691.       %  InContext Diskette Documents -- DOCS                      1/12/91    %
  3692.       %  : C   View: Document  Class: wdx   Object: incontxt.wdx   Task: doc  %
  3693.       %  -----------------------------------------==Action====--------------  %
  3694.       %                ==All=Actions=of=Class="wdx"=======@Edit==@Help==      %
  3695.       %  y     Hours   |                                               |      %
  3696.       %  ====  6 ....  | Brief Name     Your Description               |      %
  3697.       %  ====  7 ....  |  Edit         Edit object if ASCII text       |      %
  3698.       %  ====  8 ....  |  View         View using internal viewer      |      %
  3699.       %                |  Archive      Archive the object              |      %
  3700.       %    ==Which=action=set=do=you=want=to=edit?========================    %
  3701.       %    | Action definition for this class #                          |    %
  3702.       %    | Common actions applicable to all classes                    |    %
  3703.       %    | Grouped-object actions applicable to whole views or classes |    %
  3704.       %    | Macro action definitions useable in all of the above        |    %
  3705.       %    +-------------------------------------------------------------+    %
  3706.       %                |  Xport        Export over network             |      %
  3707.       %        5 ....  |  4print       Formatted print, 2/side, both   |      %
  3708.       %  out   6 .... *|  Look-fmt     Wordix format for preview       |      %
  3709.       %                                                                       %
  3710.       %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  3711.  
  3712.       From the menu, select the action list you want to  edit  (the  fourth
  3713.       alternative,  "Macros",  will  be discussed a little later). You will
  3714.       find yourself editing a list of actions, each of which has a name and
  3715.  
  3716.  
  3717.    InContxt.DOC                      -58-                      January 1993
  3718.  
  3719.  
  3720.  
  3721.  
  3722.    InContext User Guide                                 CLASSES AND ACTIONS
  3723.  
  3724.  
  3725.       a description. You may alter these, or  insert  or  delete  them,  as
  3726.       described  in the "Editing Dictionaries" section of the earlier chap-
  3727.       ter, "Interacting with InContext". The display below is an example.
  3728.  
  3729.               %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  3730.               %                                                     %
  3731.               %                             ==Action====            %
  3732.               %  ==Editing=Actions=for='txt'=Class=========@Help==  %
  3733.               %  |                                               |  %
  3734.               %  | Brief Name     Your Description               |  %
  3735.               %  |  Descript     ASCII=Text=File===============  |  %
  3736.               %  |  Edit==#=     Edit=using=preferred=editor===  |  %
  3737.               %  |  Print===     Print,=standard=size==========  |  %
  3738.               %  |  Word-cnt     Count=words,=characters,=etc.=  |  %
  3739.               %  |                                               |  %
  3740.               %                                                     %
  3741.               %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  3742.  
  3743.       If you want to edit the procedure associated with an  action,  simply
  3744.       place the cursor on the desired action and press either the F2 (Edit)
  3745.       key  or the left mouse button. A display like that below will appear,
  3746.       allowing you to use the internal editor on the procedure.
  3747.  
  3748.           %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  3749.           %                                                              %
  3750.           %   ----------------------------------------------==Action===  %
  3751.           %  |                   ==Editing=Actions=for='txt'=Class=====  %
  3752.           %  ==Editing=Definition=of="Word-cnt"================@Search/  %
  3753.           %  |wc %f    #                                                 %
  3754.           %  |!pause                                                     %
  3755.           %  |                                                           %
  3756.           %  |                                                           %
  3757.           %                                                              %
  3758.           %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  3759.  
  3760.       Such procedures may contain any mix of ordinary MS-DOS  commands  and
  3761.       special  commands  of  the  InContext  Procedure  Language,  which is
  3762.       described in the next section. This particular procedure contains one
  3763.       of each.
  3764.  
  3765.       The first line is an MS-DOS command which invokes  a  program  called
  3766.       "wc".  (You may or may not have such a program; it is not part of DOS
  3767.       or InContext.) In this command, the characters "%f" appear where  you
  3768.       might  expect  to  see  a  filename.  InContext  will  substitute the
  3769.       selected object's  filename.  Such  "variable  replacement"  will  be
  3770.       discussed a little later.
  3771.  
  3772.       The  second  line  is an internal InContext "pause" command, to allow
  3773.       you to see the output of the "wc" program  before  returning  to  the
  3774.  
  3775.  
  3776.    InContxt.DOC                      -59-                      January 1993
  3777.  
  3778.  
  3779.  
  3780.  
  3781.    InContext User Guide                                 CLASSES AND ACTIONS
  3782.  
  3783.  
  3784.       InContext display.
  3785.  
  3786.  
  3787.    How Procedures Work
  3788.    -------------------
  3789.  
  3790.       If  you  can  write  MS-DOS batch procedures, you should have no dif-
  3791.       ficulty learning to use the InContext Procedure Language.  If  "batch
  3792.       files"  are beyond your present capability, though, then you may want
  3793.       to learn about them before you undertake to write your own  InContext
  3794.       procedures.  See  your  MS-DOS manual for information about this. The
  3795.       procedures you write here will usually be based on  MS-DOS  commands,
  3796.       with  some notable assistance from a few special commands made avail-
  3797.       able by InContext. Programming,  particularly  of  the  "batch  file"
  3798.       sort,  is  really  not  very  difficult,  and there's no reason to be
  3799.       intimidated by it. It should not be done carelessly, though, since it
  3800.       is possible to inadvertently modify, or even delete,  files.  Current
  3801.       backups of your files can be a real lifesaver, whether you're testing
  3802.       out  new  procedures  or  not,  but they're especially wise in such a
  3803.       case.
  3804.  
  3805.       A PROCEDURE is a list of commands that are executed when:
  3806.  
  3807.          o  an action is selected
  3808.  
  3809.          o  an item from the Do list is selected (the Do  Command  is  dis-
  3810.             cussed later in this chapter).
  3811.  
  3812.  
  3813.       The  commands  in  a procedure consist of some mixture of MS-DOS com-
  3814.       mands and internal InContext commands. You are assumed to be familiar
  3815.       with the common MS-DOS commands,  such  as  "echo",  "copy",  "move",
  3816.       etc., and we will also refer to the invocation of other programs as a
  3817.       use  of "MS-DOS commands", since they are invoked by asking MS-DOS to
  3818.       execute them. Obviously,  though,  the  InContext  commands  are  un-
  3819.       familiar, and they will be discussed in detail below.
  3820.  
  3821.  
  3822.       Execution of Procedures
  3823.       -----------------------
  3824.       When  a procedure is executed, the commands are executed in sequence,
  3825.       starting at the top (except as this may be altered by MS-DOS  "goto",
  3826.       and  InContext  "menu"  and  "forEachObject"  commands). The internal
  3827.       commands are simply executed by InContext when it reaches  them.  MS-
  3828.       DOS  commands  have  to  be  passed  to the MS-DOS command processor,
  3829.       though. (Normally, this is the program "command.com", but some  users
  3830.       substitute an alternative command processor.)
  3831.  
  3832.       If several consecutive lines of a procedure are MS-DOS commands, they
  3833.  
  3834.  
  3835.    InContxt.DOC                      -60-                      January 1993
  3836.  
  3837.  
  3838.  
  3839.  
  3840.    InContext User Guide                                 CLASSES AND ACTIONS
  3841.  
  3842.  
  3843.       are  passed to the command processor by writing them out as an MS-DOS
  3844.       batch file and arranging for the command interpreter to  execute  the
  3845.       batch  file.  If an MS-DOS command occurs alone in a procedure, or is
  3846.       surrounded by internal commands, it is passed directly to the command
  3847.       processor without being written to a batch file. Since there is  some
  3848.       overhead  associated with invoking the command processor, you can see
  3849.       that unnecessary alternation between  MS-DOS  commands  and  internal
  3850.       commands would impede performance.
  3851.  
  3852.       If  an  error  occurs during execution of a procedure, InContext will
  3853.       display the error message and halt execution of the procedure. Please
  3854.       note that InContext has no direct way of knowing  about  errors  that
  3855.       may have occurred during the execution of other programs (command.com
  3856.       does  not  return  the ERRORLEVEL value that is available for testing
  3857.       within batch files). The only errors that can be directly detected by
  3858.       InContext are errors in the execution of its internal  commands.  For
  3859.       this  reason,  if  for no other, you should probably use the internal
  3860.       versions of such commands as rename, delete, etc., whenever possible.
  3861.  
  3862.       Whenever the MS-DOS command processor is invoked to execute an MS-DOS
  3863.       command or another program, part of the InContext  program  and  data
  3864.       are  "swapped out". That is, a portion of InContext is written out to
  3865.       EMS memory, RAMdisk, or disk, in order to make room for the (possibly
  3866.       large) program that is being invoked. You can control how this  swap-
  3867.       ping  occurs,  and how much memory is freed. This is done globally by
  3868.       setting the appropriate configuration options (discussed in  a  later
  3869.       chapter).
  3870.  
  3871.  
  3872.       A Small Example
  3873.       ---------------
  3874.       The  following example is a little contrived, for which we apologize.
  3875.       Most actions require only a one-line procedure, and we  need  an  ex-
  3876.       ample  here  that will illustrate a bit more than those actions would
  3877.       allow.
  3878.  
  3879.       Let's  suppose  that  you  have  a  spelling-checker  program  called
  3880.       "spellit",  which scans an ASCII text file, noticing words that don't
  3881.       match any entry in the program's dictionary. Assume that the  program
  3882.       prompts  the  user  for  corrections in such a case, and rewrites the
  3883.       file, with spelling corrections, on exit. Let's suppose that it  also
  3884.       updates  its own dictionary if you give it new words during an execu-
  3885.       tion, and that the dictionary is kept in the directory  "C:\MYSTUFF".
  3886.       Finally,  let's  assume  that spellit requires no more than 256K (256
  3887.       kilobytes of main memory) to run. We would like to add a  "Spell-chk"
  3888.       action for objects of the "txt" class.
  3889.  
  3890.       An acceptable procedure for such an action might be simply
  3891.  
  3892.  
  3893.  
  3894.    InContxt.DOC                      -61-                      January 1993
  3895.  
  3896.  
  3897.  
  3898.  
  3899.    InContext User Guide                                 CLASSES AND ACTIONS
  3900.  
  3901.  
  3902.            spellit %f
  3903.  
  3904.       where  the  characters  "%f"  will be replaced by the filename of the
  3905.       selected text object. A more complete procedure, though, might be
  3906.  
  3907.            !memory 256
  3908.            spellit %f
  3909.            !relogDir c:\mystuff
  3910.  
  3911.       This procedure illustrates the use of both internal commands and  MS-
  3912.       DOS  commands.  The  commands  preceded by exclamation points (!) are
  3913.       internal  InContext  commands.  The  first  command  ("!memory  256")
  3914.       directs  InContext  to swap out only enough of itself to provide 256K
  3915.       of memory for  the  following  MS-DOS  process.  The  second  command
  3916.       ("spellit  %f")  executes  spellit  on the selected object. The third
  3917.       ("!relogDir c:\mystuff") causes InContext to update its record of the
  3918.       contents of the directory C:\MYSTUFF, so that  it  will  reflect  the
  3919.       modified size, date, etc. of the dictionary file.
  3920.  
  3921.  
  3922.       Variable Substitution
  3923.       ---------------------
  3924.       During the execution of procedures, InContext looks for a set of one-
  3925.       character  "variable names", each of which is preceded by the percent
  3926.       (%) character. Whenever one of these variable names  is  encountered,
  3927.       it  is  replaced  by  an  appropriate value before the command is ex-
  3928.       ecuted.  For  example,  if   the   currently   selected   object   is
  3929.       "mystuff.txt", then the command
  3930.  
  3931.            myeditor %f
  3932.  
  3933.       becomes
  3934.  
  3935.            myeditor mystuff.txt
  3936.  
  3937.       before it is passed to MS-DOS for execution.
  3938.  
  3939.       The  most  commonly  used  InContext variables are shown in the table
  3940.       below.
  3941.  
  3942.  
  3943.  
  3944.  
  3945.  
  3946.  
  3947.  
  3948.  
  3949.  
  3950.  
  3951.  
  3952.  
  3953.    InContxt.DOC                      -62-                      January 1993
  3954.  
  3955.  
  3956.  
  3957.  
  3958.    InContext User Guide                                 CLASSES AND ACTIONS
  3959.  
  3960.  
  3961.        %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  3962.        %                                                                    %
  3963.        %  %c  The class of the currently selected object                    %
  3964.        %                                                                    %
  3965.        %  %d  The full pathname of the currently selected directory         %
  3966.        %                                                                    %
  3967.        %  %D  The current date                                              %
  3968.        %                                                                    %
  3969.        %  %f  The filename of the currently selected object                 %
  3970.        %                                                                    %
  3971.        %  %h  The full pathname of the currently selected object            %
  3972.        %                                                                    %
  3973.        %  %k  The name of the currently selected task                       %
  3974.        %                                                                    %
  3975.        %  %K  The description of the currently selected task                %
  3976.        %                                                                    %
  3977.        %  %l  The number of lines currently on the video display            %
  3978.        %                                                                    %
  3979.        %  %m  For use only in the group action list, the multiple filespec  %
  3980.        %      that describes the currently displayed objects.  This might   %
  3981.        %      be replaced by "*.*", if the "ALL" view is selected, or by    %
  3982.        %      "*.txt", if only the text class is selected, or by            %
  3983.        %      "*.doc *.txt" if a view containing both "doc" and "txt"       %
  3984.        %      classes is selected, or by a list of filenames if multiple    %
  3985.        %      "tagged" objects are selected.                                %
  3986.        %                                                                    %
  3987.        %  %o  The description, if any, of the currently selected object     %
  3988.        %                                                                    %
  3989.        %  %p  The filename prefix of the currently selected object          %
  3990.        %                                                                    %
  3991.        %  %T  The current time                                              %
  3992.        %                                                                    %
  3993.        %  %u  The name of the current user of InContext                     %
  3994.        %                                                                    %
  3995.        %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  3996.  
  3997.       They are all useable  anywhere.  The  following  variables  are  only
  3998.       meaningful inside a "forEachObject" loop (discussed later).
  3999.  
  4000.                  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  4001.                  %                                                      %
  4002.                  %  %C  The class of the current object                 %
  4003.                  %  %F  The filename of the current object              %
  4004.                  %  %H  The full pathname of the current object         %
  4005.                  %  %O  The description, if any, of the current object  %
  4006.                  %  %P  The filename prefix of the current object       %
  4007.                  %                                                      %
  4008.                  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  4009.  
  4010.  
  4011.  
  4012.    InContxt.DOC                      -63-                      January 1993
  4013.  
  4014.  
  4015.  
  4016.  
  4017.    InContext User Guide                                 CLASSES AND ACTIONS
  4018.  
  4019.  
  4020.        In  addition to the variables in these tables, the numeric variables
  4021.        "%1", "%2", and so on through "%9", are variables to which  you  can
  4022.        assign values (via the "set" and "query" commands) for later use.
  4023.  
  4024.        If you need to include an actual percent sign in a command, just use
  4025.        the string "%%".
  4026.  
  4027.  
  4028.        Comments in InContext Procedures
  4029.        --------------------------------
  4030.        Comments may be inserted in procedures by preceding the comment text
  4031.        with  a semi-colon. You should be aware that the Common action list,
  4032.        the Group action list, and the Macro definitions are  in  memory  at
  4033.        all  times.  Heavy  commenting  of  those  files should therefore be
  4034.        avoided.
  4035.  
  4036.  
  4037.        InContext Internal Commands
  4038.        ---------------------------
  4039.        The internal commands are listed below, along with descriptions and,
  4040.        where appropriate, examples. For any commands that  take  arguments,
  4041.        the  syntax  of  the  command is also shown. In syntax descriptions,
  4042.        everything shown in ordinary text  must  appear  exactly  as  shown,
  4043.        while  everything  shown in <angular brackets> is a placeholder, for
  4044.        which you would substitute appropriate values. Optional  information
  4045.        is surrounded by square brackets. Thus, the description:
  4046.  
  4047.             !delete [ <filename> ] [ noquery ]
  4048.  
  4049.        indicates  that the delete command takes two optional arguments, one
  4050.        of which is a  filename  and  the  other  of  which  is  the  string
  4051.        "noquery".
  4052.  
  4053.        The internal commands you would ordinarily use are:
  4054.  
  4055.           changeDir
  4056.  
  4057.              This  command  changes  the  current  working  directory  to a
  4058.              specified directory. The  chosen  directory  will  remain  the
  4059.              current  working directory until the next "changeDir" command,
  4060.              or the next MS-DOS "cd" command, or the end of the  procedure.
  4061.              This  command  is equivalent to the MS-DOS "cd" command except
  4062.              that it can cause a change in drive,  as  well  as  directory.
  4063.              Syntax is:
  4064.  
  4065.                   !changeDir <pathOfNewDir>
  4066.  
  4067.              Thus, to change to the "temp" directory on the "D:" drive, the
  4068.              command would be
  4069.  
  4070.  
  4071.    InContxt.DOC                      -64-                      January 1993
  4072.  
  4073.  
  4074.  
  4075.  
  4076.    InContext User Guide                                 CLASSES AND ACTIONS
  4077.  
  4078.  
  4079.                   !changeDir d:\temp
  4080.  
  4081.              Use  of this command is preferable to the MS-DOS "cd" command,
  4082.              because InContext will be aware of the working directory,  and
  4083.              will therefore automatically relog the directory.
  4084.  
  4085.           choice
  4086.  
  4087.              See "menu".
  4088.  
  4089.           copy
  4090.  
  4091.              This command exhibits two different kinds of behavior, depend-
  4092.              ing on the arguments used. Syntax is:
  4093.  
  4094.                   !copy [ <source> <destination> [ noquery ] ]
  4095.  
  4096.              If no arguments are used, as in
  4097.  
  4098.                   !copy
  4099.  
  4100.              the  command prompts the user for the name (or possibly direc-
  4101.              tory or full path) to which  the  selected  object  should  be
  4102.              copied.  If  the  user  responds with such a name or path, the
  4103.              copy operation is executed.
  4104.  
  4105.              Alternatively, if source and destination pathnames are  given,
  4106.              the  indicated source file is copied to the indicated destina-
  4107.              tion. The source must indicate an existing file, and may be  a
  4108.              simple filename, if the file is in the current directory, or a
  4109.              complete pathname. The destination can be a simple filename or
  4110.              a  full  pathname.  If the destination is found to be a direc-
  4111.              tory, a new copy of the source will be placed in the  destina-
  4112.              tion  directory,  using  the source filename. Otherwise, a new
  4113.              copy of the source file will be created and given the destina-
  4114.              tion filename.
  4115.  
  4116.              If there is already a file using  the  destination  name,  the
  4117.              user  will  be  asked  for  permission  before copying occurs,
  4118.              unless the "noquery" argument is present. Thus, the command
  4119.  
  4120.                   !copy myfile.txt a:\ noquery
  4121.  
  4122.              would copy "myfile.txt" to the root directory of the A: drive,
  4123.              and would not ask permission before over-writing a file of the
  4124.              same name there.
  4125.  
  4126.           copyGroup
  4127.  
  4128.  
  4129.  
  4130.    InContxt.DOC                      -65-                      January 1993
  4131.  
  4132.  
  4133.  
  4134.  
  4135.    InContext User Guide                                 CLASSES AND ACTIONS
  4136.  
  4137.  
  4138.              This command asks the user for a path to  which  to  copy  the
  4139.              currently selected group of objects, then copies them.
  4140.  
  4141.           createObject
  4142.  
  4143.              This  command  creates  a  new  object,  based on the filename
  4144.              prefix and class specified in the command. Syntax is:
  4145.  
  4146.                   !createObject <prefix> <class>
  4147.  
  4148.              Thus, the command "!createObject mynext doc" would create  the
  4149.              object "mynext.doc" in the current directory.
  4150.  
  4151.           delete
  4152.  
  4153.              This  command  deletes  the  specified  object,  or if none is
  4154.              specified, deletes the currently selected object. The user  is
  4155.              asked  for  permission  before  deletion,  unless "noquery" is
  4156.              specified. Syntax is:
  4157.  
  4158.                   !delete [ <filename> ] [ noquery ]
  4159.  
  4160.              Thus, to delete the file  "mytemp.txt",  without  asking  user
  4161.              permission, the command would be
  4162.  
  4163.                   !delete mytemp.txt noquery
  4164.  
  4165.              If the file does not exist, no deletion occurs and no error is
  4166.              noted.
  4167.  
  4168.           deleteGroup
  4169.              This  command  asks the user for permission to delete the cur-
  4170.              rently selected group of objects, then does so.
  4171.  
  4172.           edit
  4173.  
  4174.              This command invokes the  internal  editor  on  the  specified
  4175.              file,  if any, or on the currently selected object, if no file
  4176.              was specified. Syntax is:
  4177.  
  4178.                   !edit [ tab=<spacing> ] [ <filename> ]
  4179.  
  4180.              The optional "tab=" argument allows  the  tab  setting  to  be
  4181.              specified  in  the  command line, and therefore varied by con-
  4182.              text. An example is
  4183.  
  4184.                   !edit tab=3 myfile.txt
  4185.  
  4186.           editDictionary
  4187.  
  4188.  
  4189.    InContxt.DOC                      -66-                      January 1993
  4190.  
  4191.  
  4192.  
  4193.  
  4194.    InContext User Guide                                 CLASSES AND ACTIONS
  4195.  
  4196.  
  4197.              Some of the files use  by  InContext  are  "dictionary"  files
  4198.              (class  "dic").  The internal dictionary editor is made avail-
  4199.              able for use on such objects by this command.  You  might  use
  4200.              this  command  to  create  dictionary  files  for use with the
  4201.              "info" command (see below). Syntax is:
  4202.  
  4203.                   !editDictionary [ <filename> ]
  4204.  
  4205.           endFor
  4206.  
  4207.              See "forEachObject".
  4208.  
  4209.           endMenu
  4210.  
  4211.              See "menu".
  4212.  
  4213.           forEachObject
  4214.  
  4215.              This command allows you to execute a portion  of  a  procedure
  4216.              once  for each object currently being displayed. You might use
  4217.              it if you have a program that only operates on one file  at  a
  4218.              time, but you want to be able to invoke it on a whole class or
  4219.              view.  If  the  program in question is "theprog", the commands
  4220.              required would be:
  4221.  
  4222.                   !forEachObject
  4223.                      theprog %F
  4224.                   !endFor
  4225.  
  4226.              Notice that the "endFor" command is also required, and that it
  4227.              indicates the end of the loop that will be executed  once  for
  4228.              each  object.  Notice also that the special variable names %F,
  4229.              %H, %C, and %P must be used instead of %f, %h, %c, and %p.
  4230.  
  4231.           info
  4232.  
  4233.              This command allows you to display a  scrollable  window  con-
  4234.              taining  text  you  have  written.  It is useful for providing
  4235.              explanations of a procedure during its execution. Syntax is:
  4236.  
  4237.                   !info <dictionaryPath> <term> [ <title> ]
  4238.  
  4239.              The information  displayed  will  be  the  definition  of  the
  4240.              specified term, taken from the dictionary ("dic" object) whose
  4241.              full  MS-DOS  pathname  is  specified. If you provide a title,
  4242.              that title will be displayed, as well. For example, to display
  4243.              information at the beginning of a Do procedure that  downloads
  4244.              stock prices, you might use the command:
  4245.  
  4246.  
  4247.  
  4248.    InContxt.DOC                      -67-                      January 1993
  4249.  
  4250.  
  4251.  
  4252.  
  4253.    InContext User Guide                                 CLASSES AND ACTIONS
  4254.  
  4255.  
  4256.                   !info c:\incontxt\myinfo.dic getprice "Updating Prices"
  4257.  
  4258.           keyStuff
  4259.  
  4260.              This  command  allows you to place information in the keyboard
  4261.              buffer before calling an application.  Suppose,  for  example,
  4262.              you  have a word processor that doesn't allow you to specify a
  4263.              filename on the command line, but  expects  you  to  select  a
  4264.              "file load" command after you're in the program. You might use
  4265.              a command sequence like:
  4266.  
  4267.                   !keyStuff "FL%f\EN"
  4268.                   myWordProc
  4269.  
  4270.              to  cause  it  to  automatically load the selected object upon
  4271.              entry. The !keyStuff command loads the  keyboard  buffer  with
  4272.              the  command  characters 'F' and 'L', followed by the filename
  4273.              of the currently selected object, followed by the  ENTER  key.
  4274.              Those characters will then be read by the program "myWordProc"
  4275.              as  if they had been typed from the keyboard after the program
  4276.              was invoked. This will not work with ALL programs,  but  works
  4277.              with  most.  This  feature  greatly  increases your ability to
  4278.              "encapsulate" applications with InContext.
  4279.  
  4280.              There are a number of special characters that  can  be  loaded
  4281.              into  the  keyboard buffer using this technique. An example is
  4282.              the ENTER (or "carriage return") key designated by  the  "\EN"
  4283.              in  the  example above. These special characters are all indi-
  4284.              cated by a backslash and a two-character code that  represents
  4285.              the special character. The codes are as follows:
  4286.  
  4287.              For  function  keys,  the  code consists of the character "F",
  4288.              followed by a numeric digit from 1 through 0. These correspond
  4289.              to function keys F1 through F10. "\FA"  also  means  F10,  and
  4290.              "FB"  and  "FC"  correspond  to  F11  and  F12 on the extended
  4291.              keyboard. (The hexadecimal symbols for 10, 11, and 12  are  A,
  4292.              B, and C, respectively.)
  4293.  
  4294.              If  shifted  function  keys  are  desired, the codes are "\S1"
  4295.              through "\S0" and "\SA"  through  "\SC".  Control-function-key
  4296.              combinations  are  obtained  by  "\C1"  through "C0" and "\CA"
  4297.              through "\CC". Alt-function-key combinations are "\A1" through
  4298.              "\A0" and "\AA" through "\AC".
  4299.  
  4300.              Ordinary control characters,  such  as  control-A,  use  codes
  4301.              beginning  with  '^'. Thus, "\^A" through "\^Z" mean control-A
  4302.              through control-Z, and control-key versions of  the  following
  4303.              additional characters can be created this way:
  4304.                   [ \ ] ^ _ @
  4305.  
  4306.  
  4307.    InContxt.DOC                      -68-                      January 1993
  4308.  
  4309.  
  4310.  
  4311.  
  4312.    InContext User Guide                                 CLASSES AND ACTIONS
  4313.  
  4314.  
  4315.              Ordinary  alt-key  characters, such as alt-A, use codes begin-
  4316.              ning with '@'. Thus, "\@A" through "\@Z"  mean  alt-A  through
  4317.              alt-Z,  and  alt-key  versions  of  the  following  additional
  4318.              characters can be created this way:
  4319.                   numeric digits, -, =
  4320.  
  4321.              All remaining special characters are shown  in  the  following
  4322.              list:
  4323.                   LA left arrow
  4324.                   LC control left arrow
  4325.                   RA right arrow
  4326.                   RC control right arrow
  4327.                   UA up arrow
  4328.                   UC control up arrow
  4329.                   DA down arrow
  4330.                   DC control down arrow
  4331.                   HM home
  4332.                   HC control home
  4333.                   ED end
  4334.                   EC control end
  4335.                   PU page up
  4336.                   QU control page up
  4337.                   PD page down
  4338.                   QD control page down
  4339.                   IN insert
  4340.                   DE delete
  4341.                   G+ grey +
  4342.                   G- grey -
  4343.                   G* grey *
  4344.                   PS PrtSc
  4345.                   PC control PrtSc
  4346.                   TA tab
  4347.                   BT back tab
  4348.                   ES escape
  4349.                   BS back space
  4350.                   EN ENTER (carriage return)
  4351.                   LF line feed
  4352.                   N0 numeric key-pad 0
  4353.                   N1 numeric key-pad 1
  4354.                   N2 numeric key-pad 2
  4355.                   N3 numeric key-pad 3
  4356.                   N4 numeric key-pad 4
  4357.                   N5 numeric key-pad 5
  4358.                   N6 numeric key-pad 6
  4359.                   N7 numeric key-pad 7
  4360.                   N8 numeric key-pad 8
  4361.                   N9 numeric key-pad 9
  4362.                   N. numeric key-pad .
  4363.                   N+ numeric key-pad +
  4364.  
  4365.  
  4366.    InContxt.DOC                      -69-                      January 1993
  4367.  
  4368.  
  4369.  
  4370.  
  4371.    InContext User Guide                                 CLASSES AND ACTIONS
  4372.  
  4373.  
  4374.                   N- numeric key-pad -
  4375.                   N* numeric key-pad *
  4376.  
  4377.              To  stuff  the  backslash  character  into the buffer, use two
  4378.              backslashes in succession, as "\\".
  4379.  
  4380.              In the current version of InContext, the string that is loaded
  4381.              by "!keyStuff" is restricted to 15 characters.  This  will  be
  4382.              extended in a later version.
  4383.  
  4384.              Incidentally,  whenever InContext executes another program, it
  4385.              clears the  keyboard  buffer  on  return.  This  prevents  un-
  4386.              processed  keystrokes from doing unexpected things upon return
  4387.              to InContext. However, if the "!keyStuff" command is used  and
  4388.              not   followed  by  the  execution  of  another  program,  the
  4389.              keystrokes are left in the buffer and read by InContext as  if
  4390.              you  had  typed  them  in  yourself. This allows you to define
  4391.              procedures that exert user-level control  over  InContext,  if
  4392.              you like. This is recommended for knowledgable users only.
  4393.  
  4394.              An especially useful application of the latter is in an InCon-
  4395.              text startup ("incStart") macro. By placing in that macro, for
  4396.              example,
  4397.  
  4398.                   !keyStuff "df"
  4399.  
  4400.              it is possible to cause the automatic execution of a Do proce-
  4401.              dure (e.g., "fontset") at InContext initialization time.
  4402.  
  4403.           memory
  4404.  
  4405.              This command allows you to specify the amount of memory needed
  4406.              for  the  next  following  block  of  MS-DOS commands. You can
  4407.              optimize InContext performance  by  requesting  only  what  is
  4408.              actually needed, if you choose to do so. Syntax is:
  4409.  
  4410.                   !memory <kilobytes>
  4411.  
  4412.              Thus,  to  invoke  a simple word-count program that needs only
  4413.              64K of memory, you might use the commands
  4414.  
  4415.                   !memory 64
  4416.                   wc %f
  4417.                   !pause
  4418.  
  4419.              If you're using EMS or RAMdisk for swapping, or running  on  a
  4420.              sufficiently  fast machine, you probably don't need to use any
  4421.              "memory" commands.
  4422.  
  4423.  
  4424.  
  4425.    InContxt.DOC                      -70-                      January 1993
  4426.  
  4427.  
  4428.  
  4429.  
  4430.    InContext User Guide                                 CLASSES AND ACTIONS
  4431.  
  4432.  
  4433.           menu
  4434.  
  4435.              This command allows you to construct menus within a procedure.
  4436.              Syntax is:
  4437.  
  4438.                   !menu [ <title> ]
  4439.  
  4440.              This command is used with a series of "choice" commands and an
  4441.              "endMenu" command, to specify a  whole  menu  and  the  conse-
  4442.              quences of each possible choice. A simple example is:
  4443.  
  4444.                   !menu "Do which simple MS-DOS operation?"
  4445.                      !choice "Check disk"
  4446.                         chkdsk
  4447.                      !choice "Show directory contents"
  4448.                         dir
  4449.                   !endMenu
  4450.  
  4451.              Menus  may  not  be  nested (but notice that it probably isn't
  4452.              necessary, given that the menus occur in the  context  of  ac-
  4453.              tions that are themselves menu-selected).
  4454.  
  4455.           noRelog
  4456.  
  4457.              This  command  can  be used to slightly speed up the return of
  4458.              InContext after a procedure, if you know  that  the  procedure
  4459.              cannot  alter  any  files.  By letting InContext know that the
  4460.              files cannot be altered, you eliminate the need for  relogging
  4461.              the files in the current directory upon return from the proce-
  4462.              dure.  This  command  can  occur  anywhere in the procedure. A
  4463.              common example would be the use of a viewer:
  4464.  
  4465.                   !noRelog
  4466.                   pcxview %f
  4467.  
  4468.           pause
  4469.  
  4470.              This command  causes  InContext  to  pause,  and  wait  for  a
  4471.              keystroke  or  mouse button depression. It is used immediately
  4472.              after a DOS command or external program, in order to allow the
  4473.              user to look at the results of that operation before returning
  4474.              to the InContext display.
  4475.  
  4476.           query
  4477.  
  4478.              This command allows you to ask the user for  information,  and
  4479.              then  to  use  the  information  in subsequent commands in the
  4480.              procedure. Syntax is:
  4481.  
  4482.  
  4483.  
  4484.    InContxt.DOC                      -71-                      January 1993
  4485.  
  4486.  
  4487.  
  4488.  
  4489.    InContext User Guide                                 CLASSES AND ACTIONS
  4490.  
  4491.  
  4492.                   !query <variable> <question> <length>
  4493.  
  4494.              InContext provides nine variables whose values can be  set  by
  4495.              query  commands. The first argument is the number of the vari-
  4496.              able that will contain the user's answer. The second  argument
  4497.              is  the text of a question that will be asked. The third argu-
  4498.              ment is the length, in characters, of the answer field. At the
  4499.              risk of waxing a little fanciful, suppose you have a  program,
  4500.              "coatarms" that displays a coat of arms for the user's family,
  4501.              given his family name. You might write:
  4502.  
  4503.                   !query 3 "Enter your last name" 20
  4504.                   coatarms %3
  4505.  
  4506.              If  the  user answers "Smith", this would result in the actual
  4507.              execution of the command
  4508.  
  4509.                   coatarms Smith
  4510.  
  4511.              If the variable already has a value (perhaps  established  via
  4512.              the  "set"  command), it will be presented as a default value,
  4513.              which the user can select by simply pressing ENTER.
  4514.  
  4515.           relogDir
  4516.  
  4517.              Unless you use the "noRelog" command, InContext always  checks
  4518.              all  the  files  in  the  current directory at the end of each
  4519.              procedure, to make sure that its object list is up-do-date. It
  4520.              does NOT automatically relog other  directories,  however.  If
  4521.              you  execute a program that is known to modify the contents of
  4522.              some other directory, you can cause InContext  to  update  the
  4523.              log  for  that  directory  as  well,  by use of the "relogDir"
  4524.              command. Syntax is:
  4525.  
  4526.                   !relogDir <pathOfDirectory>
  4527.  
  4528.              For example, if your editor automatically backs up  all  files
  4529.              to  the directory "C:\BACKUP", and you want the object list to
  4530.              be current whenever you go to that directory,  you  might  use
  4531.              the sequence
  4532.  
  4533.                   myeditor %f
  4534.                   !relogDir c:\backup
  4535.  
  4536.              to invoke your editor.
  4537.  
  4538.           resetMouse
  4539.  
  4540.              Some  programs  which  you  may  invoke  from within InContext
  4541.  
  4542.  
  4543.    InContxt.DOC                      -72-                      January 1993
  4544.  
  4545.  
  4546.  
  4547.  
  4548.    InContext User Guide                                 CLASSES AND ACTIONS
  4549.  
  4550.  
  4551.              disable the mouse and fail to restore it  upon  exit.  If  you
  4552.              don't  see a cursor upon return from such a program, or if the
  4553.              mouse no longer works, you should add the "resetMouse" command
  4554.              to the procedure. On some machines, the mouse reset  operation
  4555.              adds  a second or two to the time required to return to InCon-
  4556.              text; that's why it isn't done unless you  explicitly  include
  4557.              this command.
  4558.  
  4559.           rename
  4560.  
  4561.              This command exhibits two different kinds of behavior, depend-
  4562.              ing on the arguments used. Syntax is:
  4563.  
  4564.                   !rename [ <source> <destination> [ noquery ] ]
  4565.  
  4566.              If no arguments are used, as in
  4567.  
  4568.                   !rename
  4569.  
  4570.              the command prompts the user for the new name for the selected
  4571.              object. This may be a simple filename or a full pathname (this
  4572.              command  can  be  used  to move the selected object to another
  4573.              directory, or even another drive). If the user  responds  with
  4574.              such  a  name,  the  object  is  moved  and/or renamed, as ap-
  4575.              propriate.
  4576.  
  4577.              Alternatively, if source and destination pathnames are  given,
  4578.              the  indicated  source file is moved to the indicated destina-
  4579.              tion. The source must indicate an existing file, and may be  a
  4580.              simple filename, if the file is in the current directory, or a
  4581.              complete pathname. The destination can be a simple filename or
  4582.              a  full  pathname.  If the destination is found to be a direc-
  4583.              tory, the source object will  be  placed  in  the  destination
  4584.              directory,  using  the  source filename. Otherwise, the source
  4585.              object will be given the destination filename,  and  moved  to
  4586.              the  indicated  drive  or  directory  if  that information was
  4587.              included in the destination.
  4588.  
  4589.              If there is already a file using  the  destination  name,  the
  4590.              user  will  be  asked  for  permission before renaming occurs,
  4591.              unless the "noquery" argument is present. Thus, the command
  4592.  
  4593.                   !rename myfile.txt a:\ noquery
  4594.  
  4595.              would move "myfile.txt" to the root directory of the A: drive,
  4596.              and would not ask permission before over-writing a file of the
  4597.              same name there.
  4598.  
  4599.           set
  4600.  
  4601.  
  4602.    InContxt.DOC                      -73-                      January 1993
  4603.  
  4604.  
  4605.  
  4606.  
  4607.    InContext User Guide                                 CLASSES AND ACTIONS
  4608.  
  4609.  
  4610.              The "set" command allows you to set particular internal  vari-
  4611.              ables to specified values. Syntax is:
  4612.  
  4613.                   !set <variable> <value>
  4614.  
  4615.              This is useful, for example, in defining default values before
  4616.              using the "query" command. Thus, the sequence
  4617.  
  4618.                   !set 1 "MacDonald's"
  4619.                   !query 1 "Enter preferred restaurant" 20
  4620.  
  4621.              would  allow  the user to select MacDonald's without having to
  4622.              enter the text.
  4623.  
  4624.           setDescription
  4625.  
  4626.              The "setDescription" command allows you to specify a  descrip-
  4627.              tion (up to 40 characters) for an object. Syntax is:
  4628.  
  4629.                   !setDescription [ <filename> ] <description>
  4630.  
  4631.              Thus,  if  no  filename  is  specified, the description of the
  4632.              currently selected object is changed,  while  inclusion  of  a
  4633.              filename  causes the description of the specified file (in the
  4634.              current directory only) to be changed.
  4635.  
  4636.              A typical use for this  command  is  in  the  following  group
  4637.              procedure:
  4638.  
  4639.                   !forEachObject
  4640.                      !set 1 %O
  4641.                      !query 1 "Enter new description for '%F'" 40
  4642.                      !setDescription %F %1
  4643.                   !endFor
  4644.  
  4645.              which  allows  descriptions  to  be  added  to a set of tagged
  4646.              items.
  4647.  
  4648.           unload
  4649.  
  4650.              A few memory-hungry applications may require more  memory  for
  4651.              their  execution than InContext can make available by swapping
  4652.              itself to disk or EMS. A good example is Ventura Publisher, if
  4653.              run on a machine that doesn't have EMS  memory.  The  "unload"
  4654.              command  can  be  used  to  cause  InContext  to write out the
  4655.              desired MS-DOS commands to a batch file,  and  then  quit  al-
  4656.              together,  freeing  ALL of the memory used by InContext. Since
  4657.              the batch file is still there, it can be executed from DOS.
  4658.  
  4659.  
  4660.  
  4661.    InContxt.DOC                      -74-                      January 1993
  4662.  
  4663.  
  4664.  
  4665.  
  4666.    InContext User Guide                                 CLASSES AND ACTIONS
  4667.  
  4668.  
  4669.              When you installed InContext,  you  installed  a  batch  file,
  4670.              "inc.bat",  which  is  used  to  execute  InContext. "inc.bat"
  4671.              checks, after each invocation of InContext, to see if a proce-
  4672.              dure batch file has been left behind  for  execution.  If  so,
  4673.              that  batch file is executed and InContext is reloaded. If you
  4674.              use "unload", read that  batch  file  for  instructions  about
  4675.              making  it  correspond  to your installation and configuration
  4676.              choices. Otherwise, InContext may  not  be  automatically  re-
  4677.              invoked after the other application is executed.
  4678.  
  4679.              You  will  only  want to "unload" InContext in those few cases
  4680.              that really need it, for performance reasons. Note that,  when
  4681.              "unload"  is  used,  only  the  block  of  MS-DOS commands im-
  4682.              mediately following "unload" can be executed. If you have  any
  4683.              additional  internal  commands after that block, they will not
  4684.              be executed.
  4685.  
  4686.           verify
  4687.  
  4688.              This command asks the user if it's OK  to  proceed,  and  ter-
  4689.              minates  the  procedure  if  the  user  fails to answer "Yes".
  4690.              Syntax is:
  4691.  
  4692.                   !verify [ <question> ]
  4693.  
  4694.              If a question is specified, it is asked instead of the default
  4695.              question. Thus, a possible form of this command is
  4696.  
  4697.                   !verify "Is it OK to archive this file?"
  4698.  
  4699.           view
  4700.  
  4701.              This command invokes the  internal  viewer  on  the  specified
  4702.              file,  if any, or on the currently selected object, if no file
  4703.              was specified. Syntax is:
  4704.  
  4705.                   !view [ tab=<spacing> ] [ <filename> ]
  4706.  
  4707.              The optional "tab=" argument allows  the  tab  setting  to  be
  4708.              specified  in  the  command line, and therefore varied by con-
  4709.              text. An example is
  4710.  
  4711.                   !view tab=3 myfile.txt
  4712.  
  4713.           viewArchive
  4714.  
  4715.              This command  invokes  the  internal  archive  viewer  on  the
  4716.              specified  file,  if any, or on the currently selected object,
  4717.              if no file was specified. Syntax is:
  4718.  
  4719.  
  4720.    InContxt.DOC                      -75-                      January 1993
  4721.  
  4722.  
  4723.  
  4724.  
  4725.    InContext User Guide                                 CLASSES AND ACTIONS
  4726.  
  4727.  
  4728.                   !viewArchive <type> [ <filename> ]
  4729.  
  4730.              The "type" argument can be any of the following, and specifies
  4731.              both the archive file format and the archiver program(s) to be
  4732.              used:
  4733.  
  4734.                   ACA    ARC format, using ARCA/ARCE.
  4735.  
  4736.                   ARC    ARC format, using SEA's ARC.
  4737.  
  4738.                   ARJ    ARJ format, using ARJ.
  4739.  
  4740.                   LZH    LZH format, using LHA.
  4741.  
  4742.                   PAK    PAK format, using PAK.
  4743.  
  4744.                   PKP    ARC format, using PKPAK/PKUNPAK
  4745.  
  4746.                   ZIP    ZIP format, using PKZIP/PKUNZIP.
  4747.  
  4748.              For example, the following command would  invoke  the  archive
  4749.              viewer  on  an  ARC-type document archive called DOC-ARCV.XYZ,
  4750.              using the PKPAK/PKUNPAK programs for any archive operations:
  4751.  
  4752.                   !viewArchive PKP doc-arcv.xyz
  4753.  
  4754.           viewLZH
  4755.  
  4756.              This command is obsolete. Use "!viewArchive LZH", instead.
  4757.  
  4758.        The following commands are also available, but you  will  ordinarily
  4759.        have no need to use them in your own procedures:
  4760.  
  4761.           deleteDir
  4762.  
  4763.              If  the  current directory is empty and is not the root direc-
  4764.              tory of its drive, this  command  deletes  the  directory  and
  4765.              moves to the next directory above it.
  4766.  
  4767.           deleteGroup
  4768.  
  4769.              This command checks with the user first, and then deletes each
  4770.              currently  displayed  object.  Depending on the user's choice,
  4771.              the objects can be deleted or saved individually,  or  deleted
  4772.              as  a  group  in  a  single  operation,  or the command can be
  4773.              aborted.
  4774.  
  4775.           put
  4776.  
  4777.  
  4778.  
  4779.    InContxt.DOC                      -76-                      January 1993
  4780.  
  4781.  
  4782.  
  4783.  
  4784.    InContext User Guide                                 CLASSES AND ACTIONS
  4785.  
  4786.  
  4787.              This command drops either a copy or the original of an  object
  4788.              being  "carried" into the current directory. The user is asked
  4789.              which is preferred. This command is really only  intended  for
  4790.              internal InContext use.
  4791.  
  4792.           take
  4793.  
  4794.              This  command  causes  InContext to "pick up" the selected ob-
  4795.              ject, for possible later copying  or  moving  via  the  "!put"
  4796.              command, above.
  4797.  
  4798.  
  4799.        Some Example Procedures
  4800.        -----------------------
  4801.        A  few  examples of action definitions are shown in the table below.
  4802.        Although these are all possible action definitions, they  are  shown
  4803.        here to illustrate features that procedures may have, rather than as
  4804.        finished action definitions.
  4805.  
  4806.             %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  4807.             %                                                           %
  4808.             %  delete   !delete                                         %
  4809.             %                                                           %
  4810.             %  edit     myedit %f                                       %
  4811.             %                                                           %
  4812.             %  archive  !query 1 "Enter name of LHA archive" 12         %
  4813.             %           !verify "OK to archive '%f' to '%1'?"           %
  4814.             %           lha u %1 %f                                     %
  4815.             %           !pause                                          %
  4816.             %           !delete                                         %
  4817.             %                                                           %
  4818.             %  edit     ren %f auto123.wk1                              %
  4819.             %           123                                             %
  4820.             %           ren auto123.wk1 %f                              %
  4821.             %                                                           %
  4822.             %  edit     !keyStuff "//fr%f\EN"                           %
  4823.             %           123                                             %
  4824.             %                                                           %
  4825.             %  run      !menu "Are there any command-line parameters?"  %
  4826.             %              !choice "Yes"                                %
  4827.             %                 !query 1 "Enter parameters for '%f'" 72   %
  4828.             %                 %f %1                                     %
  4829.             %                 !pause                                    %
  4830.             %              !choice "No"                                 %
  4831.             %                 %f                                        %
  4832.             %                 !pause                                    %
  4833.             %           !endMenu                                        %
  4834.             %           !resetMouse                                     %
  4835.             %                                                           %
  4836.  
  4837.  
  4838.    InContxt.DOC                      -77-                      January 1993
  4839.  
  4840.  
  4841.  
  4842.  
  4843.    InContext User Guide                                 CLASSES AND ACTIONS
  4844.  
  4845.  
  4846.             %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  4847.  
  4848.        The  first  example is a procedure for performing simple deletion of
  4849.        an object. Since the InContext internal command, "!delete" asks  the
  4850.        user for permission before deleting, this is safer than the ordinary
  4851.        DOS  "del"  command.  It  is  also  very efficient, since it doesn't
  4852.        actually invoke the DOS command interpreter.
  4853.  
  4854.        The second example defines an edit operation for a text  object.  It
  4855.        assumes  an  editor  called  "myedit",  capable  of accepting on the
  4856.        command line the name of the file to be edited.
  4857.  
  4858.        The third example illustrates the use of InContext special  commands
  4859.        at  both the beginning and end of a procedure. This procedure copies
  4860.        or moves an  object  into  a  specified  LHA  archive.  The  initial
  4861.        "!query"  command  obtains an archive name of up to 12 characters in
  4862.        length, and stores that name in variable 1.  The  "!verify"  command
  4863.        checks with the user to be sure the proposed action is correct. Then
  4864.        "lha"  is  invoked  with a pause to allow the user to see whether or
  4865.        not the program ran successfully. Finally,  the  user  is  given  an
  4866.        opportunity to delete the original file, if desired.
  4867.  
  4868.        The  fourth  example also defines an edit operation, but this one is
  4869.        for a Lotus 1-2-3 2.0 spreadsheet  ("wk1"  class).  The  example  is
  4870.        somewhat  simplified, but it will help illustrate some properties of
  4871.        procedures. Many programs fail to provide  adequate  facilities  for
  4872.        command-line  control,  and  Lotus  1-2-3  is  an  example. There is
  4873.        usually a way to accomplish the desired control, however,  and  this
  4874.        procedure  illustrates  one  way  of causing Lotus 1-2-3 to load and
  4875.        display a specified file. In this approach, we're  taking  advantage
  4876.        of a feature of Lotus 1-2-3; it automatically loads and displays the
  4877.        file "auto123.wk1" on invocation, if that file is present. By renam-
  4878.        ing the file we're interested in to that name, editing it with Lotus
  4879.        1-2-3,  and renaming it back, we're able to keep spreadsheets by our
  4880.        preferred names and in our preferred directories, even though  Lotus
  4881.        1-2-3 was not designed to support that.
  4882.  
  4883.        The  fifth  example illustrates another way of "encapsulating" Lotus
  4884.        1-2-3. This time, the spreadsheet  is  not  renamed,  but  is  auto-
  4885.        matically  loaded upon initialization of Lotus 1-2-3 by stuffing the
  4886.        keyboard buffer with  the  necessary  Lotus  1-2-3  commands  before
  4887.        invoking  1-2-3.  These  two  approaches  do  not  exhaust  the pos-
  4888.        sibilities. Each approach to program "encapsulation" has  advantages
  4889.        and  disadvantages.  This whole topic is discussed in more detail in
  4890.        the chapter on "Examples and Application Notes".
  4891.  
  4892.        The last example illustrates the "menu" command. The  example  is  a
  4893.        procedure for executing a selected program, with or without command-
  4894.        line arguments. The "!menu" command, together with the two "!choice"
  4895.  
  4896.  
  4897.    InContxt.DOC                      -78-                      January 1993
  4898.  
  4899.  
  4900.  
  4901.  
  4902.    InContext User Guide                                 CLASSES AND ACTIONS
  4903.  
  4904.  
  4905.        commands  and  "!endMenu",  presents  the user with a choice between
  4906.        passing arguments to the program and not doing so.  The  program  is
  4907.        then   invoked  appropriately,  followed  by  a  pause.  Finally,  a
  4908.        "!resetMouse" command restores the mouse cursor in case the  program
  4909.        that was executed fails to do so.
  4910.  
  4911.        For  many  more  examples,  and  a  fuller discussion, see the later
  4912.        chapter, "Examples and Application Notes
  4913.  
  4914.  
  4915.        Macros
  4916.        ------
  4917.        Macros are really a very simple idea, but they can greatly  increase
  4918.        the  power  of  even a simple procedure language. Basically, a macro
  4919.        consists of a name and a definition. Whenever the name appears in  a
  4920.        procedure, the entire definition of the macro is substituted for the
  4921.        name. This allows a rather complicated set of commands to be written
  4922.        once,  stored  in  one  place,  and  used as needed, perhaps in many
  4923.        procedures. Since the set of commands  exists  only  in  one  place,
  4924.        changing  it will cause all of the using procedures to change in the
  4925.        same way.
  4926.  
  4927.        For example, it is likely that you will  have  many  object  classes
  4928.        whose  underlying  file  is  an  ordinary  text file, editable by an
  4929.        ordinary text editor. By defining the macro "editText", and  putting
  4930.        in  the  definition  whatever  it  takes to set up and run your text
  4931.        editor the way you like, you can allow each of the classes to behave
  4932.        in exactly the same way, even if you later change editors or  choose
  4933.        to invoke your editor differently.
  4934.  
  4935.        To  do  this,  you  would  cause the action list of each of the text
  4936.        classes to have an "Edit" action whose definition  includes  an  in-
  4937.        vocation of the macro:
  4938.  
  4939.             #editText
  4940.  
  4941.        To define the macro, you would select the Action display, and select
  4942.        the  "Edit"  command  from  that display's Command Bar. When given a
  4943.        choice of action lists to edit, choose "Macro Action Definitions".
  4944.  
  4945.        By placing an entry here called "editText", we create a  macro  that
  4946.        will  be  executed any time the "edit" action is selected for one of
  4947.        the text classes. An example  of  a  possible  definition  for  this
  4948.        macro,  using  the  BRIEF  editor with a mouse menu driver, is shown
  4949.        below.
  4950.  
  4951.             menu c:\tools\brief.mnu
  4952.             b -u150 -L%l %f c:\notes
  4953.             menu off
  4954.  
  4955.  
  4956.    InContxt.DOC                      -79-                      January 1993
  4957.  
  4958.  
  4959.  
  4960.  
  4961.    InContext User Guide                                 CLASSES AND ACTIONS
  4962.  
  4963.  
  4964.        The actual definition of this macro will depend on what program  you
  4965.        use for editing ordinary text files. If you have no text editor, you
  4966.        may  want  to  use  the  InContext internal editor. To do so, simply
  4967.        replace the entire macro definition with the single line "!edit %f".
  4968.  
  4969.        At present, macros may not be nested.  That  is,  a  macro  may  not
  4970.        itself invoke another macro.
  4971.  
  4972.  
  4973.        Special Macros Used to Control InContext
  4974.        ----------------------------------------
  4975.        A few macros have special significance to InContext. An awareness of
  4976.        how  they  are  used will increase the flexibility and power at your
  4977.        disposal. The following special macros  are  used  to  control  par-
  4978.        ticular behaviors of InContext:
  4979.  
  4980.           incEdit   The  InContext internal editor is intended for handling
  4981.                     only fairly small files, but it is relatively fast  for
  4982.                     small  files.  If  you  wish  to  substitute  your  own
  4983.                     preferred editor  altogether,  you  should  change  the
  4984.                     "editText"  macro. If you would like to substitute your
  4985.                     own editor only for files over a certain size, however,
  4986.                     you can define this  macro  to  invoke  your  preferred
  4987.                     editor. This macro will be used only for editing a file
  4988.                     that  exceeds either available memory or the upper size
  4989.                     limit defined in your configuration options. In example
  4990.                     would be
  4991.                          myedit %f
  4992.  
  4993.           incPrint  This macro can be used to specify a print procedure for
  4994.                     use when you select the @Print command. In the  absence
  4995.                     of  such  a macro, printing is done by writing directly
  4996.                     to the "prn:" standard printer output.  An  example  of
  4997.                     such  a  procedure  is the following, which substitutes
  4998.                     the 4PRINT laser printer program:
  4999.                          downld c:\fonts\lp085r16.usl 2
  5000.                          4print %f -q -tab3 -h"%D page $cn//%D page $cn"
  5001.  
  5002.           incStart  If this macro is present, it is executed during  InCon-
  5003.                     text  initialization.  This  allows  you  to  cause the
  5004.                     program to start out in the state you prefer. A  common
  5005.                     example  would  define  the following procedure for in-
  5006.                     cStart:
  5007.                          !keyStuff "\@T"
  5008.                     If this is done, InContext will automatically start out
  5009.                     with today's tasks in the Work-in-Progress  list.  This
  5010.                     is  equivalent  to  your  typing Alt-T, for the "Today"
  5011.                     command. Without this  startup  macro,  InContext  will
  5012.                     start  out  with the same tasks active as at the end of
  5013.  
  5014.  
  5015.    InContxt.DOC                      -80-                      January 1993
  5016.  
  5017.  
  5018.  
  5019.  
  5020.    InContext User Guide                                 CLASSES AND ACTIONS
  5021.  
  5022.  
  5023.                     the last session.
  5024.  
  5025.           incView   This macro can be used to  over-ride  the  use  of  the
  5026.                     InContext internal viewer for certain purposes, such as
  5027.                     viewing  files  in an LHA archive. For example, to sub-
  5028.                     stitute Vern Buerg's  LIST  viewer  for  the  InContext
  5029.                     internal  viewer,  define  an  "incView" macro with the
  5030.                     procedure
  5031.                          list %f
  5032.  
  5033.  
  5034.  
  5035.        Other Macros You May Want to Change
  5036.        -----------------------------------
  5037.        These macros do not affect InContext in any special  way,  but  they
  5038.        are  used  by  some of the class definitions distributed with InCon-
  5039.        text:
  5040.  
  5041.           editText  In the action lists distributed  with  InContext,  this
  5042.                     macro  is  used for all single-file editing operations.
  5043.                     You can substitute your own editor  for  the  InContext
  5044.                     internal editor by redefining this macro.
  5045.  
  5046.           printTxt  In  the  action  lists distributed with InContext, this
  5047.                     macro is used for all ASCII-file  printing  operations.
  5048.                     You can substitute your own print program by redefining
  5049.                     this macro.
  5050.  
  5051.           viewText  In  the  action  lists distributed with InContext, this
  5052.                     macro is used for all single-file  viewing  operations.
  5053.                     You  can  substitute  your own viewer for the InContext
  5054.                     internal viewer by redefining this macro. This will not
  5055.                     affect calendar viewing (which must  use  the  internal
  5056.                     viewer), or viewing of files inside an LHA archive (see
  5057.                     "incView", above).
  5058.  
  5059.  
  5060.  
  5061.     The Do Display
  5062.     --------------
  5063.  
  5064.        The  Do  Command  allows  you  to define procedures which are always
  5065.        available and are independent of objects and  classes.  You  may  do
  5066.        this  because  of  the convenience of invoking these procedures from
  5067.        anywhere, or because they simply are not  related  to  any  specific
  5068.        objects  or  directories. Examples might include loading a preferred
  5069.        screen font, viewing your phone list, or  logging  into  a  Bulletin
  5070.        Board  System  for an on-line session. As distributed, InContext has
  5071.        no Do procedures defined.
  5072.  
  5073.  
  5074.    InContxt.DOC                      -81-                      January 1993
  5075.  
  5076.  
  5077.  
  5078.  
  5079.    InContext User Guide                                 CLASSES AND ACTIONS
  5080.  
  5081.  
  5082.        The list of defined "Do" procedures can be shown on  the  Main  Dis-
  5083.        play,  and  is  always  available  through use of the Do Command, as
  5084.        shown in the display below.  This  display  (and  therefore  the  Do
  5085.        procedures)  can be edited in a manner similar to the editing of the
  5086.        Action Display.
  5087.  
  5088.                %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  5089.                %                                                     %
  5090.                %                                           ==Do====  %
  5091.                %  ===================================@Edit==@Help==  %
  5092.                %  |                                               |  %
  5093.                %  | Brief Name     Your Description               |  %
  5094.                %  |  Assets       Edit family financial info      |  %
  5095.                %  |  Beta         Edit beta test stuff            |  %
  5096.                %  |  Coreldrw     Execute Corel Draw              |  %
  5097.                %  |  Document #   View documentation store        |  %
  5098.                %  |  Fontset      Set display font                |  %
  5099.                %  |  Getprice     Download current stock prices   |  %
  5100.                %  |  Import       Receive files over network      |  %
  5101.                %  |  Incomtax     Work on family tax returns      |  %
  5102.                %  |  Logenter     Log item at end of task note    |  %
  5103.                %  |  Lookfor      Search here for specified text  |  %
  5104.                %  |  Nortutil     Run Norton utilities            |  %
  5105.                %  |  Phone        Edit telephone lists            |  %
  5106.                %  |  Relay        Remote comm using Relay Gold    |  %
  5107.                %  |  Startday     Start new day                   |  %
  5108.                %  |  Tapcis       Interact with CompuServe        |  %
  5109.                %  |  Unfrag       Test disk, defrag if necessary  |  %
  5110.                %  +- Document ----------------------------- 4/21 -+  %
  5111.                %                                                     %
  5112.                %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  5113.  
  5114.  
  5115.  
  5116.  
  5117.  
  5118.  
  5119.  
  5120.  
  5121.  
  5122.  
  5123.  
  5124.  
  5125.  
  5126.  
  5127.  
  5128.  
  5129.  
  5130.  
  5131.  
  5132.  
  5133.    InContxt.DOC                      -82-                      January 1993
  5134.  
  5135.  
  5136.  
  5137.  
  5138.    InContext User Guide                   TIME, PLANS, AND WORK-IN-PROGRESS
  5139.  
  5140.  
  5141.         
  5142.                      +-----------------------------------+
  5143.                      | TIME, PLANS, AND WORK-IN-PROGRESS |
  5144.                      +-----------------------------------+
  5145.  
  5146.  
  5147.  
  5148.    The Time Command and Display
  5149.    ----------------------------
  5150.  
  5151.       The Time Display gives you a time-related view of your activities. By
  5152.       defining  TASKS,  including  appointments,  to-do  items,  etc.,  you
  5153.       provide  the  information  from  which InContext can construct such a
  5154.       view. Since the calendar is an integral part of  your  work  environ-
  5155.       ment,  InContext  provides  a  fairly  sophisticated  set of calendar
  5156.       functions.
  5157.  
  5158.       The display below is a portion of the Time display, which is obtained
  5159.       by selecting the Time command from the Main Display.
  5160.  
  5161.        %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  5162.        %                                                                   %
  5163.        %        ==Time====                                                 %
  5164.        %  =Go:=@Back=@Forward=+Day=-Day=@Today=====@Day=@Week=@Month=====  %
  5165.        %  |                                                                %
  5166.        %  |         < ># Jan 1991   < >             Wednesday, Jan 16, 19  %
  5167.        %  |         S  M  T  W  T  F  S        12a....   6 ....  12p....   %
  5168.        %  |               1  2  3  4  5         1 ....   7 ....   1 ....   %
  5169.        %  |         6  7  8  9 10 11 12         2 ....   8 aaaa   2 ....   %
  5170.        %  |        13 14 15 16 17 18 19         3 ....   9 aaaa   3 ....   %
  5171.        %  |        20 21 22 23 24 25 26         4 ....  10 aaaa   4 ....   %
  5172.        %  |        27 28 29 30 31               5 ....  11 ....   5 ....   %
  5173.        %  |                                                                %
  5174.        %  |   Task      Description                    Type   Date-Date    %
  5175.        %  |  ambulanc  Ambulance Staffing              Appt   1/16         %
  5176.        %  | *help======Finish=InContext=Help=Text======ToDo===1/16=======  %
  5177.        %  |  plumbing==Fix=Bathroom=Plumbing=Problems==ToDo===1/16=======  %
  5178.        %  | *install   Install SideKicker 2.04         ToDo   1/16         %
  5179.        %  | *runforms  Review Run Forms                ToDo   1/16         %
  5180.        %  |  tax       Work on family 1990 tax data    ToDo   1/16         %
  5181.        %  |                                                                %
  5182.        %                                                                   %
  5183.        %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  5184.  
  5185.       The upper-left portion of the Time display shows a  one-month  calen-
  5186.       dar.  Each  time you select the Time Display, this calendar will ini-
  5187.       tially show the current month, with the current day highlighted.
  5188.  
  5189.       This calendar is live, in the sense that you can move around in  time
  5190.  
  5191.  
  5192.    InContxt.DOC                      -83-                      January 1993
  5193.  
  5194.  
  5195.  
  5196.  
  5197.    InContext User Guide                   TIME, PLANS, AND WORK-IN-PROGRESS
  5198.  
  5199.  
  5200.       by  selecting  things  from  it with the mouse or keyboard cursor. To
  5201.       focus on a particular date, for example, you need  only  select  that
  5202.       date  with  the mouse or by placing the cursor and pressing ENTER. To
  5203.       move forward or backward a month at a time, you may place the  cursor
  5204.       on  the  top line of the calendar, as shown in the display above, and
  5205.       press ENTER or the left mouse button. If the cursor is at the extreme
  5206.       left end of the line (on the leftward-pointing arrow) you  will  move
  5207.       to the next earlier month. If it is on or near the rightward-pointing
  5208.       arrow, as shown in the figure, you will move to the next later month.
  5209.       The arrows at the right end of the line operate similarly, but move a
  5210.       year at a time. You can also move forward or back a month or a day at
  5211.       a  time  from the keyboard using the "@Back", "@Forward", "+Day", and
  5212.       "-Day" commands.
  5213.  
  5214.       The upper-right portion of the Time Display shows a one-day schedule.
  5215.       This area of the display does not respond to mouse selections (except
  5216.       during the editing of task definitions, as discussed  elsewhere).  It
  5217.       shows you the schedule for the indicated day. Each scheduled appoint-
  5218.       ment  is  indicated  on  this  schedule by the first character of its
  5219.       brief  name.  Thus,  "Ambulance  Staffing",  with  its  brief   name,
  5220.       "ambulanc",  is shown occupying the time from 8:00 A.M. to 11:00 A.M.
  5221.       If there are any conflicting or  overlapping  appointments,  question
  5222.       marks (?) will appear instead.
  5223.  
  5224.       The  bottom  of  the  display  contains  a list of the tasks that are
  5225.       relevant to the selected day. This area of the display is  scrollable
  5226.       if  there  are  too  many tasks for the available space. Each line of
  5227.       this display area shows the basic information about  a  single  task,
  5228.       including  its  brief name, description, type, and date/time informa-
  5229.       tion.
  5230.  
  5231.  
  5232.    What Is a Task?
  5233.    ---------------
  5234.  
  5235.       The word "task" is used rather broadly here,  to  mean  any  activity
  5236.       associated with a particular time or time span. Thus, it includes to-
  5237.       do items, but also appointments, holidays, etc.
  5238.  
  5239.       InContext  provides  the  ability to easily define tasks, and to have
  5240.       them show up appropriately in your calendar,  repeating  periodically
  5241.       if  you  desire.  You  can easily keep a set of notes associated with
  5242.       each task.
  5243.  
  5244.       Tasks can be organized by project, to help you  organize  and  manage
  5245.       them.  Tasks  can  have  predecessor/successor relations, so that one
  5246.       task must be completed before another can begin.
  5247.  
  5248.       You can associate a task with a  particular  work  context,  so  that
  5249.  
  5250.  
  5251.    InContxt.DOC                      -84-                      January 1993
  5252.  
  5253.  
  5254.  
  5255.  
  5256.    InContext User Guide                   TIME, PLANS, AND WORK-IN-PROGRESS
  5257.  
  5258.  
  5259.       selecting  the  task  places you in the correct context, and even in-
  5260.       vokes the correct action, if you like. Completed tasks can be  logged
  5261.       automatically, so that you have a record of your activities for later
  5262.       reference.
  5263.  
  5264.  
  5265.       Types of Tasks
  5266.       --------------
  5267.       InContext recognizes four types of tasks:
  5268.  
  5269.          Appt  An appointment occurs on a single day, and has start and end
  5270.                times associated with it.
  5271.  
  5272.          Span  A  "Span"  is an interval of one or more whole days that are
  5273.                to be noticed, but are not necessarily associated  with  any
  5274.                specific  activity  on  your  part.  Examples  are holidays,
  5275.                vacation periods, business trips, spouse's  birthdays,  etc.
  5276.                Spans do not involve any particular time of day.
  5277.  
  5278.          ToDo  A  "ToDo"  item  has  only  a  starting date. It is inactive
  5279.                before that date. Once that  date  arrives,  the  ToDo  item
  5280.                remains active, "following" you until you complete or other-
  5281.                wise dispose of it.
  5282.  
  5283.          Work  A  "Work"  task  has  both starting and ending dates, and is
  5284.                used to describe a piece of  work  that  is  planned  for  a
  5285.                particular  period.  Work  tasks,  once their date comes up,
  5286.                will be logged as worked on, but will  remain  active  until
  5287.                you  complete  or  otherwise dispose of them, stretching out
  5288.                the planned interval if necessary.
  5289.  
  5290.  
  5291.       When you define a task, it  shows  up  on  your  calendar  and  daily
  5292.       schedule  in different ways, depending on the type that you assign to
  5293.       it.
  5294.  
  5295.  
  5296.       Repeating Tasks
  5297.       ---------------
  5298.       Many activities repeat at regular intervals. It's handy to be able to
  5299.       define a task only once in such cases, and have it automatically show
  5300.       up at each appropriate time. InContext allows  you  to  define  tasks
  5301.       that repeat:
  5302.  
  5303.          o  on specified days of the week. For example, a task could repeat
  5304.             on Monday, Wednesday, and Friday of every week.
  5305.  
  5306.          o  every so many days, from 1 (daily) to a maximum of 31 days
  5307.  
  5308.  
  5309.  
  5310.    InContxt.DOC                      -85-                      January 1993
  5311.  
  5312.  
  5313.  
  5314.  
  5315.    InContext User Guide                   TIME, PLANS, AND WORK-IN-PROGRESS
  5316.  
  5317.  
  5318.          o  every so many months, from 1 to a maximum of 7 months
  5319.  
  5320.          o  annually
  5321.  
  5322.          o  on  the  first,  second, third, fourth, or last occurrence of a
  5323.             specified day(s) of the week. For example, a task could  repeat
  5324.             on  the  third Wednesday of each month, or the last Tuesday and
  5325.             last Thursday of every month.
  5326.  
  5327.  
  5328.  
  5329.       Task Notes
  5330.       ----------
  5331.       A task notes file can be associated with any task.  This  is  a  very
  5332.       convenient  way of keeping track of what there is to do in connection
  5333.       with the task, and you will find many other uses for these notes. The
  5334.       notes files are objects of class "not" in  the  InContext  directory,
  5335.       and  they  can  be  operated  on  with tools other than the InContext
  5336.       internal editor, but that is the primary way of working on them.
  5337.  
  5338.  
  5339.    Adding and Editing Tasks
  5340.    ------------------------
  5341.  
  5342.       New tasks can be added from the Time Display or the Plans Display, by
  5343.       selecting @Add from the Command Bar. They can also be added by typing
  5344.       Alt-A or function key F5 from the Main Display.  Any  of  these  will
  5345.       result in a display similar to the following.
  5346.  
  5347.  
  5348.  
  5349.  
  5350.  
  5351.  
  5352.  
  5353.  
  5354.  
  5355.  
  5356.  
  5357.  
  5358.  
  5359.  
  5360.  
  5361.  
  5362.  
  5363.  
  5364.  
  5365.  
  5366.  
  5367.  
  5368.  
  5369.    InContxt.DOC                      -86-                      January 1993
  5370.  
  5371.  
  5372.  
  5373.  
  5374.    InContext User Guide                   TIME, PLANS, AND WORK-IN-PROGRESS
  5375.  
  5376.  
  5377.              %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  5378.              %                                                       %
  5379.              %              ==Plans====                              %
  5380.              %  ==Edit=Individual=Task=Definition==================  %
  5381.              %  |                                                    %
  5382.              %  |         < >  Jan 1991   < >             Tuesday,   %
  5383.              %  |         S  M  T  W  T  F  S        12a....   6 ..  %
  5384.              %  |               1  2  3  4  5         1 ....   7 ..  %
  5385.              %  |         6  7  8  9 10 11 12         2 ....   8 ..  %
  5386.              %  |        13 14 15 16 17 18 19         3 ....   9 ..  %
  5387.              %  |        20 21 22 23 24 25 26         4 ....  10 ..  %
  5388.              %  |        27 28 29 30 31               5 ....  11 ..  %
  5389.              %  |                                                    %
  5390.              %  |                                                    %
  5391.              %  |                                                    %
  5392.              %  |  Name: #=======   Description: ==================  %
  5393.              %  |                                                    %
  5394.              %  |  Type: ToDo   Dates: 1/15/91=                      %
  5395.              %  |                                                    %
  5396.              %  |* Note: ====0   Priority: Medium   Repeats: None    %
  5397.              %  |                                                    %
  5398.              %  |  Context: Unset    Show: Always                    %
  5399.              %  |  Action: ========                                  %
  5400.              %                                                       %
  5401.              %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  5402.  
  5403.       You should type in both a brief name and a longer text description of
  5404.       the task. (If you exit this "edit task" operation with the brief name
  5405.       blank,  the  "Add" operation will be cancelled.) For purposes of this
  5406.       example, let's assume the task being added  is  "Lunch  with  Alice".
  5407.       Then the brief name might just be "lunch", or perhaps "alice". "Lunch
  5408.       with Alice" will be an appropriate description.
  5409.  
  5410.       Next,  you  select the task type. The default type is "ToDo". You may
  5411.       change the type by placing the cursor on the type and pressing  ENTER
  5412.       or  the  left mouse button. The tab key will quickly bring the cursor
  5413.       to the right place, if you don't happen to be using a mouse. Pressing
  5414.       ENTER or the left mouse button will cycle you through  the  available
  5415.       task  types.  For  "Lunch  with  Alice", the appropriate task type is
  5416.       "Appt" (appointment).
  5417.  
  5418.       The next thing to do is to fill in the date or dates associated  with
  5419.       the  task.  There are a couple of ways you might indicate the desired
  5420.       date. If you're using a mouse, the easiest way is  to  simply  select
  5421.       the  date  from the calendar shown above. If not, then you should use
  5422.       the keyboard to put  the  correct  date(s)  into  the  editable  date
  5423.       field(s).  Since  "Lunch  with  Alice" is an appointment, it involves
  5424.       only one date.
  5425.  
  5426.  
  5427.  
  5428.    InContxt.DOC                      -87-                      January 1993
  5429.  
  5430.  
  5431.  
  5432.  
  5433.    InContext User Guide                   TIME, PLANS, AND WORK-IN-PROGRESS
  5434.  
  5435.  
  5436.           %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  5437.           %                                                              %
  5438.           %        ==Time====                                            %
  5439.           %  ==========================================================  %
  5440.           %  |                                                           %
  5441.           %  |         < >  Jan 1991   < >             Monday, Jan 21,   %
  5442.           %  |         S  M  T  W  T  F  S        12a....   6 ....  12p  %
  5443.           %  |               1  2  3  4  5         1 ....   7 ....   1   %
  5444.           %  |         6  7  8  9 10 11 12         2 ....   8 ....   2   %
  5445.           %  |        13 14 15 16 17 18 19         3 ....   9 ....   3   %
  5446.           %  |        20 21 22 23 24 25 26         4 ....  10 ....   4   %
  5447.           %  |        27 28 29 30 31               5 ....  11 ..#.   5   %
  5448.           %  |                                                           %
  5449.           %  ==Edit=Individual=Task=Definition=========================  %
  5450.           %  |                                                           %
  5451.           %  |  Name: lunch===   Description: Lunch=with=Alice=========  %
  5452.           %  |                                                           %
  5453.           %  |  Type: Appt   Dates: 1/21/91=               Times: 12:00  %
  5454.           %  |                                                           %
  5455.           %  |* Note: ====0                      Repeats: None           %
  5456.           %  |                                                           %
  5457.           %  |  Context: Unset    Show: Always                           %
  5458.           %  |  Action: ========                                         %
  5459.           %                                                              %
  5460.           %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  5461.  
  5462.       The next thing to do is to specify the time(s),  if  any,  associated
  5463.       with  the  task.  Once  again, there's a shortcut available if you're
  5464.       using a mouse. You  can  simply  select  the  times  from  the  daily
  5465.       schedule  displayed  above.  For  example,  the cursor in the display
  5466.       above is shown on the dot that represents  11:30  A.M.  By  selecting
  5467.       this  time,  and  then selecting the time 1:00 P.M., we can input the
  5468.       two times required for our appointment. If you aren't using a  mouse,
  5469.       or if you require times other than in quarter-hour increments, you'll
  5470.       need to provide the times by text editing the time fields.
  5471.  
  5472.  
  5473.       Setting Up a Repeating Task
  5474.       ---------------------------
  5475.       For  a simple appointment, this is all you have to do. However, let's
  5476.       suppose that this is intended to be a weekly lunch appointment  every
  5477.       Monday  through  the  end  of March. Then you would need to place the
  5478.       cursor on the word "None" in the "Repeats" area, and press  ENTER  or
  5479.       the  left  mouse  button.  This  would  change  the  display to allow
  5480.       repeating-task information to be added.
  5481.  
  5482.  
  5483.  
  5484.  
  5485.  
  5486.  
  5487.    InContxt.DOC                      -88-                      January 1993
  5488.  
  5489.  
  5490.  
  5491.  
  5492.    InContext User Guide                   TIME, PLANS, AND WORK-IN-PROGRESS
  5493.  
  5494.  
  5495.              %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  5496.              %                                                        %
  5497.              %  tion: Lunch=with=Alice==============                  %
  5498.              %                                                        %
  5499.              %  /91=               Times: 12:00= to 12:00=            %
  5500.              %                                                        %
  5501.              %           Repeats: Every# SMTWTFS   first occurrence:  %
  5502.              %                           __ days      1/21/91=        %
  5503.              %  Always                  _ months   repeats until:     %
  5504.              %                              year      1/21/1==        %
  5505.              %                                                        %
  5506.              %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  5507.  
  5508.       To cause this appointment to occur "Every Monday",  we  simply  place
  5509.       the cursor on the "M" (for Monday), and press ENTER or the left mouse
  5510.       button.
  5511.  
  5512.       Leaving  the  cursor on "Every", and continuing to press ENTER or the
  5513.       left mouse button will cause InContext to cycle through the available
  5514.       repetition options. Alternatively,  with  "Every"  showing,  you  can
  5515.       select "__ days", or "_ months", or "year" to invoke those options.
  5516.  
  5517.       Most  repetitive  tasks  don't  continue  repeating forever, so it is
  5518.       possible to place outer limits on the  repetition.  To  cause  "Lunch
  5519.       with  Alice"  to  repeat  weekly through the end of March, we need to
  5520.       place the date "3/31/91" in the "Repeats until" field.
  5521.  
  5522.       This can be done by text-editing the date, or it can be done with the
  5523.       mouse in the following way. Select the field in  which  you  want  to
  5524.       enter  the  date  (place the cursor there and press the left button).
  5525.       Then select a date from the calendar  displayed  above.  In  general,
  5526.       this  approach  works  with all dates and times, and with the special
  5527.       fields "__ days", and "_ months".
  5528.  
  5529.       Incidentally, the "first occurrence" date  is  the  base  from  which
  5530.       repetition  calculations  are  performed. Thus, if you want a task to
  5531.       repeat on the first of every month, make sure the "first  occurrence"
  5532.       date  is  the  first  day of a month not later than the desired first
  5533.       occurrence. As another example, a biweekly task  first  occurring  on
  5534.       January  4, 1991 would have 1/4/91 as the "first occurrence" date and
  5535.       "Every 14 days" as the repetition factor. The "Start Date" would  not
  5536.       necessarily  remain  1/4/91,  however.  In fact, the start date would
  5537.       become 1/18/91 after the first occurrence of the task was completed.
  5538.  
  5539.  
  5540.       Setting Task Priorities
  5541.       -----------------------
  5542.       "Work" and "ToDo" tasks can have priorities associated with them,  if
  5543.       you  choose.  By marking them "Urgent", you can cause them to show up
  5544.  
  5545.  
  5546.    InContxt.DOC                      -89-                      January 1993
  5547.  
  5548.  
  5549.  
  5550.  
  5551.    InContext User Guide                   TIME, PLANS, AND WORK-IN-PROGRESS
  5552.  
  5553.  
  5554.       near the top of your things-to-do-today list, and to appear  in  bold
  5555.       colors, in order to grab your attention. In the first display of this
  5556.       chapter,  for  example,  the  "help"  and "plumbing" tasks are marked
  5557.       "urgent", and are therefore bold and displayed immediately after  the
  5558.       appointments.  The full set of available priorities is : Low, Medium,
  5559.       High, and Urgent.
  5560.  
  5561.  
  5562.       The Note Number
  5563.       ---------------
  5564.       The first time you attempt to edit the notes associated with a  task,
  5565.       a  note number will be assigned. Ordinarily, you will have no need to
  5566.       modify such note numbers. Occasionally, though, you may wish to  have
  5567.       multiple  tasks which share a single notes file. For that reason, the
  5568.       "Edit Task" display allows you to modify the  note  number,  just  by
  5569.       text-editing the "Note:" field.
  5570.  
  5571.       The  zero  currently  showing  as a note number in the examples above
  5572.       indicates that no note number has yet been assigned to this task.  If
  5573.       you  want  this  task  to share the notes file with another task, you
  5574.       should find out the note number assigned to that task (by editing its
  5575.       task definition) and then place that number  in  this  task's  "Note"
  5576.       field.
  5577.  
  5578.  
  5579.       Organizing Tasks by Project
  5580.       ---------------------------
  5581.       In  the  upper-right  corner of the task editing display is a "Proj:"
  5582.       field, which allows you to specify that a task is associated  with  a
  5583.       particular  project. If you never change the value of this field, all
  5584.       your tasks will simply be associated  with  the  "Misc"  project.  By
  5585.       changing  it,  however,  you make it possible to subdivide your tasks
  5586.       into related groups, and to focus on those groups one at a time, when
  5587.       you wish to do so.
  5588.  
  5589.                               %%%%%%%%%%%%%%%%%%%%%%%%
  5590.                               %                      %
  5591.                               %                      %
  5592.                               %    Proj: Misc====    %
  5593.                               %                      %
  5594.                               %                      %
  5595.                               %%%%%%%%%%%%%%%%%%%%%%%%
  5596.  
  5597.       To change the project associated with a particular task, you can type
  5598.       a different project name into this field. Or, if you wish to  specify
  5599.       a  project  for which other tasks already exist, you can simply place
  5600.       the cursor on this field and press ENTER or the left mouse button, in
  5601.       order to step through the list of existing projects.
  5602.  
  5603.  
  5604.  
  5605.    InContxt.DOC                      -90-                      January 1993
  5606.  
  5607.  
  5608.  
  5609.  
  5610.    InContext User Guide                   TIME, PLANS, AND WORK-IN-PROGRESS
  5611.  
  5612.  
  5613.       Using Task Successors and Floating Tasks
  5614.       ----------------------------------------
  5615.       The tasks within a project often are interdependent, and you can  use
  5616.       two  additional  properties  of  ToDo  and Work tasks to express this
  5617.       interdependency. These properties are task  successors  and  floating
  5618.       tasks. You will then be able to work with project definitions in such
  5619.       forms as the Gantt chart.
  5620.  
  5621.          %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  5622.          %                                                               %
  5623.          %  =Project:=Doghouse=========================================  %
  5624.          %  =@Select=@Verify==@Back=@Forward==Modes:=@Gantt=@Text==@Add  %
  5625.          %            |       September 1992        |         October 1  %
  5626.          %     Task   |         1    1    2    2    |         1    1     %
  5627.          %            |    5    0    5    0    5    |    5    0    5     %
  5628.          %  ----------┴┴┴┴┴┴┴┴┴┴┴┴┴┴┴┴┴┴┴┴┴┴┴┴┴┴┴┴┴┴┴┴┴┴┴┴┴┴┴┴┴┴┴┴┴┴┴┴┴  %
  5629.          %   design   #                           |-v                    %
  5630.          %   foundatn                                ^--v                %
  5631.          %   framing                                     ^-v             %
  5632.          %   roof                                           ^-v          %
  5633.          %   siding                                         ^-v          %
  5634.          %   plumbing                                          ^--v      %
  5635.          %   jacuzzi                                               ^     %
  5636.          %   wiring                                            ^v        %
  5637.          %   sheetrck                                              %     %
  5638.          %   paint                                                  ^|   %
  5639.          %                                                               %
  5640.          %                                                               %
  5641.          %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  5642.  
  5643.       The  first  task in this project ("design") has been defined (via the
  5644.       Edit Task display) as non-floating. This means that it  is  fixed  in
  5645.       time.  It  is  also  defined as having the successor task "foundatn".
  5646.       This means that the "design" task must be completed before the "foun-
  5647.       datn" task can be started.
  5648.  
  5649.                     %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  5650.                     %                                          %
  5651.                     %    Floats: No    Successors: foundatn==  %
  5652.                     %                                          %
  5653.                     %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  5654.  
  5655.       The second task in the project ("foundatn") has a  successor  of  its
  5656.       own  ("framing").  It is also defined as "floating", which means that
  5657.       it automatically moves in time so that  it  immediately  follows  its
  5658.       predecessor task(s).
  5659.  
  5660.  
  5661.  
  5662.  
  5663.  
  5664.    InContxt.DOC                      -91-                      January 1993
  5665.  
  5666.  
  5667.  
  5668.  
  5669.    InContext User Guide                   TIME, PLANS, AND WORK-IN-PROGRESS
  5670.  
  5671.  
  5672.                     %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  5673.                     %                                          %
  5674.                     %    Floats: Yes   Successors: framing===  %
  5675.                     %                                          %
  5676.                     %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  5677.  
  5678.       Use  of  these InContext features will give you much of the power you
  5679.       might find in basic "project management" tools. See  "Plans  Display"
  5680.       for additional, related information.
  5681.  
  5682.  
  5683.       Setting a Task Context
  5684.       ----------------------
  5685.       Many  of  the tasks you perform will not involve the computer at all,
  5686.       except as calendar entries. "Lunch with Alice" is an example. But for
  5687.       those tasks whose execution involves the computer, you  may  find  it
  5688.       helpful  to  associate  the  task with a particular work context. The
  5689.       work context includes the drive, directory, view, class,  and  object
  5690.       focus  shown  in  the  context  area.  When you want a task to be as-
  5691.       sociated with a particular work context, you  should  get  into  that
  5692.       context before adding or editing the task definition. Then select the
  5693.       word  "Unset"  in  the  "Context" field (refer to the figures above).
  5694.       This will change the display to indicated that the  context  for  the
  5695.       task is "set".
  5696.  
  5697.              %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  5698.              %                                                       %
  5699.              %  ==Edit=Individual=Task=Definition==================  %
  5700.              %  |                                                    %
  5701.              %  |  Name: runforms   Description: Review=Run=Forms==  %
  5702.              %  |                                                    %
  5703.              %  |  Type: ToDo   Dates: 1/16/91=                      %
  5704.              %  |                                                    %
  5705.              %  |* Note: ===77   Priority: High     Repeats: None    %
  5706.              %  |                                                    %
  5707.              %  |  Context: Set  #   Show: Always                    %
  5708.              %  |  Action: edit====                                  %
  5709.              %                                                       %
  5710.              %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  5711.  
  5712.       The word "Set" here means that the task has been associated with some
  5713.       work  context. Any time you select the task to do work, you will find
  5714.       yourself in that context. If you choose, you  may  even  specify  the
  5715.       action  to  be taken then, by typing an action name into the "Action"
  5716.       field. The display above shows the word  "edit"  entered  here.  With
  5717.       this context definition, selection of the "runforms" task will result
  5718.       in immediate editing of the object "runforms.txt".
  5719.  
  5720.       The  "Show" field allows you to control the appearance of a repeating
  5721.  
  5722.  
  5723.    InContxt.DOC                      -92-                      January 1993
  5724.  
  5725.  
  5726.  
  5727.  
  5728.    InContext User Guide                   TIME, PLANS, AND WORK-IN-PROGRESS
  5729.  
  5730.  
  5731.       task on future calendars and logs of completed  activities.  Suppose,
  5732.       for  example,  you  have  a  "workout" task (a ToDo task that repeats
  5733.       daily) intended to remind you to get some exercise each day.  If  you
  5734.       leave the "Show" field set to "Always", this item will appear on each
  5735.       day of your calendar, when you print it. Changing the "Show" field to
  5736.       "No  future"  would  prevent that. Both of these settings would allow
  5737.       completed workouts to appear in your  log  of  completed  activities,
  5738.       while the values "No past" or "Current only" would not.
  5739.  
  5740.  
  5741.    Selecting a Task
  5742.    ----------------
  5743.  
  5744.       Once  a  task  has been defined, you may select it from the Time Dis-
  5745.       play, the Plans Display, the Work-in-Progress Display,  or  the  Main
  5746.       Display.  Having  selected it, you will be asked to indicate what you
  5747.       want to do relative to the task, as shown below. These choices should
  5748.       be fairly self-explanatory.
  5749.  
  5750.       %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  5751.       %                                                                       %
  5752.       %  =Disposition=of=task:=lunch=--=Lunch=with=Alice====================  %
  5753.       %  | Work    #  -- Enter task context and execute specified action, if  %
  5754.       %  | Go         -- Go into task context, but do not execute action      %
  5755.       %  |                                                                    %
  5756.       %  | Completed  -- All work on task is done; log and delete or repeat   %
  5757.       %  | TodayDone  -- Some work done on task today; log and show tomorrow  %
  5758.       %  | Postpone   -- Postpone task to tomorrow                            %
  5759.       %  | Omit       -- Skip this instance of task; advance date if task re  %
  5760.       %  | Delete     -- Delete task altogether; do not log task              %
  5761.       %  | Inactive   -- Remove task from WiP display, if present             %
  5762.       %  |                                                                    %
  5763.       %  | Edit       -- Edit task definition                                 %
  5764.       %  | Adjust     -- Adjust priority of the task                          %
  5765.       %  | Make task  -- Create a copy, predecessor, or successor of this ta  %
  5766.       %  | Select     -- Select task notes for possible actions               %
  5767.       %  | Notes      -- Edit notes for the task                              %
  5768.       %                                                                       %
  5769.       %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  5770.  
  5771.  
  5772.    Time Information on the Main Display
  5773.    ------------------------------------
  5774.  
  5775.       An especially useful time-related feature is the ability  to  display
  5776.       today's tasks and today's schedule on the Main Display. Since all the
  5777.       content of the Main Display is under your control, you may decide you
  5778.       don't  want  to make use of this feature, but it's worth considering.
  5779.       An example section of the Main Display is shown below.
  5780.  
  5781.  
  5782.    InContxt.DOC                      -93-                      January 1993
  5783.  
  5784.  
  5785.  
  5786.  
  5787.    InContext User Guide                   TIME, PLANS, AND WORK-IN-PROGRESS
  5788.  
  5789.  
  5790.                  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  5791.                  %                                                %
  5792.                  %   Dir: InContext Version 0.32 Help -- INC032   %
  5793.                  %   Drive: C   View: Document  Class: ALL   Obj  %
  5794.                  %  =Space==Time==Plans==WiP====View==Class==Obj  %
  5795.                  %  |                            |                %
  5796.                  %  | Today     Hours     WiP    |  Views  Class  %
  5797.                  %  | ambulanc  6 .... *help     | ALL      ALL   %
  5798.                  %  |*help      7 ....   INC032  | Archive  aaa   %
  5799.                  %  | plumbing  8 aaaa   CONTROL | Chess    asm   %
  5800.                  %  |*install   9 aaaa  tax      | Document c     %
  5801.                  %  |*runforms 10 aaaa   FINANCE | Finance  h     %
  5802.                  %  | tax      11 ....           | Fonts    mk    %
  5803.                  %  |          12p....           | Graphics lnt   %
  5804.                  %                                                %
  5805.                  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  5806.  
  5807.       This display shows that several activities are or  were  planned  for
  5808.       today, including "ambulanc"(an appointment), "plumbing" and one other
  5809.       urgent  work  tasks or to-do items, and several less urgent tasks. It
  5810.       indicates that the "ambulanc" appointment is from 8:00 A.M. to  11:00
  5811.       A.M.
  5812.  
  5813.       The display of the task list on the Main Display allows you to easily
  5814.       select a task you would like to work on. Since one more keystroke can
  5815.       get  you into the full work context associated with the task, this is
  5816.       probably the most powerful method of moving from place to  place  and
  5817.       from  task  to  task.  The display also contains flags indicating the
  5818.       existence of task notes for some of the tasks (these flags are  shown
  5819.       here with the character '*', but they actually show on the display as
  5820.       little musical notes). Selecting this single character will result in
  5821.       immediate  invocation  of the editor on the task notes. (If you use a
  5822.       mouse, you may find it convenient to design your  Main  Display  with
  5823.       "Today"  at  the  left  edge of the display, since that makes it very
  5824.       easy to select the task notes with the mouse.)
  5825.  
  5826.  
  5827.    The Plans Display
  5828.    -----------------
  5829.  
  5830.       Once you have a set of tasks defined,  you  need  different  ways  of
  5831.       viewing those tasks for different purposes. The Time Display provides
  5832.       a  calendar-oriented  view, showing you those tasks that are relevant
  5833.       to any particular day, week, or month. That is especially useful when
  5834.       you are executing the tasks that you've planned, but it isn't usually
  5835.       the best view for the purpose of  preparing  such  plans.  The  Plans
  5836.       Display is provided for that purpose.
  5837.  
  5838.  
  5839.  
  5840.  
  5841.    InContxt.DOC                      -94-                      January 1993
  5842.  
  5843.  
  5844.  
  5845.  
  5846.    InContext User Guide                   TIME, PLANS, AND WORK-IN-PROGRESS
  5847.  
  5848.  
  5849.       The Plans Display in Gantt Mode
  5850.       -------------------------------
  5851.  
  5852.          %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  5853.          %                                                               %
  5854.          %  =Project:=Doghouse=========================================  %
  5855.          %  =@Select=@Verify==@Back=@Forward==Modes:=@Gantt=@Text==@Add  %
  5856.          %            |       September 1992        |         October 1  %
  5857.          %     Task   |         1    1    2    2    |         1    1     %
  5858.          %            |    5    0    5    0    5    |    5    0    5     %
  5859.          %  ----------┴┴┴┴┴┴┴┴┴┴┴┴┴┴┴┴┴┴┴┴┴┴┴┴┴┴┴┴┴┴┴┴┴┴┴┴┴┴┴┴┴┴┴┴┴┴┴┴┴  %
  5860.          %   design   #                           |-v                    %
  5861.          %   foundatn                                ^--v                %
  5862.          %   framing                                     ^-v             %
  5863.          %   roof                                           ^-v          %
  5864.          %   siding                                         ^-v          %
  5865.          %   plumbing                                          ^--v      %
  5866.          %   jacuzzi                                               ^     %
  5867.          %   wiring                                            ^v        %
  5868.          %   sheetrck                                              %     %
  5869.          %   paint                                                  ^|   %
  5870.          %                                                               %
  5871.          %                                                               %
  5872.          %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  5873.  
  5874.       The  default mode for the Plans Display is the Gantt mode. This shows
  5875.       your tasks in the form of a "Gantt Chart". In this form, each line of
  5876.       the display represents a single task, and a horizontal bar  indicates
  5877.       the  time-span  of the task. Thus, in the example above, the "design"
  5878.       task is planned to occur from September 28 through September 30.  The
  5879.       downward-pointing  triangle at the end of this period shows that this
  5880.       task has a successor ("foundatn", in this case). The Gantt chart is a
  5881.       common, and very effective, way of visualizing the interrelated tasks
  5882.       in a project.
  5883.  
  5884.  
  5885.       The Plans Display in Text Mode
  5886.       ------------------------------
  5887.       The Plans Display also has a Text  mode,  which  you  can  access  by
  5888.       selecting the "@Text" command from the command bar. In this mode, the
  5889.       information  shown  about  each task is the same as that shown in the
  5890.       Time Display, but the collection of tasks is future-oriented,  rather
  5891.       than oriented toward a particular day.
  5892.  
  5893.  
  5894.  
  5895.  
  5896.  
  5897.  
  5898.  
  5899.  
  5900.    InContxt.DOC                      -95-                      January 1993
  5901.  
  5902.  
  5903.  
  5904.  
  5905.    InContext User Guide                   TIME, PLANS, AND WORK-IN-PROGRESS
  5906.  
  5907.  
  5908.         %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  5909.         %                                                                  %
  5910.         %              ==Plans=(Text=Mode)====                             %
  5911.         %  ==Project:=Doghouse===========================================  %
  5912.         %  ==@Select=@Verify==@Back=@Forward==Modes:=@Gantt=@Text==@Add=@  %
  5913.         %  |                                                               %
  5914.         %  |                                                               %
  5915.         %  |  Task      Description                    Type   Date-Date    %
  5916.         %  |                                                               %
  5917.         %  | design  # Design Rover's doghouse         Work   9/15  9/17   %
  5918.         %  | foundatn  Build foundation                Work   9/18  9/21   %
  5919.         %  | framing   Frame the structure             Work   9/22  9/24   %
  5920.         %  | roof      Add roof (as opposed to bark)   Work   9/25  9/27   %
  5921.         %  | siding    Add exterior siding             Work   9/25  9/27   %
  5922.         %  | plumbing  Install plumbing, fireplug      Work   9/28 10/1    %
  5923.         %  | jacuzzi   Install jacuzzi                 Work  10/2  10/2    %
  5924.         %  | wiring    Do electrical wiring, lights    Work   9/28  9/29   %
  5925.         %  | sheetrck  Add sheetrock to walls          Work  10/2  10/2    %
  5926.         %  | paint     Paint doghouse                  Work  10/3  10/4    %
  5927.         %  |                                                               %
  5928.         %                                                                  %
  5929.         %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  5930.  
  5931.  
  5932.       Other Features of the Plans Display
  5933.       -----------------------------------
  5934.       The  Plans  Display also has a "@Select" command, which allows you to
  5935.       select one (or ALL) of your projects for  viewing,  and  a  "@Verify"
  5936.       command.  "@Verify" performs a simple analysis of your plans, looking
  5937.       for logical inconsistencies, such as a nonexistent successor,  incon-
  5938.       sistent  dates, or a cycle. (A cycle occurs when, for example, task A
  5939.       is listed as a successor of task B, and task B is a successor of task
  5940.       A.) The remaining commands operate similarly to  those  of  the  Time
  5941.       Display, and should be fairly self-evident.
  5942.  
  5943.       If  you find yourself making use of the Plans Display, and organizing
  5944.       your tasks by project, you might want to consider adding a "Projects"
  5945.       area to your Main Display. See "Format and User Information Options".
  5946.  
  5947.  
  5948.  
  5949.  
  5950.  
  5951.  
  5952.  
  5953.  
  5954.  
  5955.  
  5956.  
  5957.  
  5958.  
  5959.    InContxt.DOC                      -96-                      January 1993
  5960.  
  5961.  
  5962.  
  5963.  
  5964.    InContext User Guide                   TIME, PLANS, AND WORK-IN-PROGRESS
  5965.  
  5966.  
  5967.                    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  5968.                    %                                            %
  5969.                    %  =Space==Time==Plans==WiP==View==Class==O  %
  5970.                    %  |                                      |  %
  5971.                    %  | Today     Hours     WiP     Project  |  %
  5972.                    %  | design   12a.... *te-docs   ALL      |  %
  5973.                    %  |           1 ....   DOCS     Cedprint |  %
  5974.                    %  |           2 ....   INCONTXT Doghouse |  %
  5975.                    %  |           3 ....   STP-USER Environ  |  %
  5976.                    %                                            %
  5977.                    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  5978.  
  5979.  
  5980.    The Work-in-Progress Display
  5981.    ----------------------------
  5982.  
  5983.       The Work-in-Progress (WiP) Display provides a different view of  your
  5984.       active tasks than that provided by the Time Display. The Time Display
  5985.       lists  the  tasks that are relevant to a selected date, regardless of
  5986.       their nature. When you first invoke the Time Display, the tasks shown
  5987.       are those relevant to "today". The  list  includes  appointments  and
  5988.       "spans"  such  as  "Summer  Vacation", and "My spouse's birthday". It
  5989.       also includes work tasks that involve the computer, and  tasks  which
  5990.       do  not. It is a convenient way of determining what you've planned to
  5991.       do today, but it is not the most convenient display for finding  your
  5992.       way  around  the  work  you do involving the computer. These comments
  5993.       also all apply to the Time portion of the Main Display.
  5994.  
  5995.       In contrast, the WiP display lists ONLY those  tasks  for  which  you
  5996.       have  established  a computer work context (by changing the "Context"
  5997.       in the task definition  to  "Set"  (see  "Setting  a  Task  Context",
  5998.       above).
  5999.  
  6000.               %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  6001.               %                                                     %
  6002.               %                     ==WiP====                       %
  6003.               %  ==Work=in=Progress=====================@Clear==@I  %
  6004.               %  |                                                  %
  6005.               %  |       Task or Directory                          %
  6006.               %  | *help -- Finish InContext Help Text              %
  6007.               %  |    1 C:\INC032                                   %
  6008.               %  |  # 2 C:\INC032\CONTROL                           %
  6009.               %  |  tax -- Work on family 1990 tax data             %
  6010.               %  |    3 C:\RUDY\FINANCE                             %
  6011.               %  |                                                  %
  6012.               %                                                     %
  6013.               %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  6014.  
  6015.       Furthermore,  the  WiP  display shows the directories associated with
  6016.  
  6017.  
  6018.    InContxt.DOC                      -97-                      January 1993
  6019.  
  6020.  
  6021.  
  6022.  
  6023.    InContext User Guide                   TIME, PLANS, AND WORK-IN-PROGRESS
  6024.  
  6025.  
  6026.       those tasks. If you have been in several different directories  while
  6027.       working  on  the  current  task,  they are all shown. The WiP display
  6028.       shows up to nine tasks, and up to nine directories.
  6029.  
  6030.       In the display above, for example, the current  task,  shown  at  the
  6031.       top, is "help -- Finish InContext Help Text". Work has been performed
  6032.       in  connection  with this task in two directories. The current direc-
  6033.       tory, shown first, is C:\INC032, but the user has also  been  in  the
  6034.       directory C:\INC032\CONTROL while working on this task. This informa-
  6035.       tion  is  also  shown  in WiP information on the main display, though
  6036.       usually in abbreviated form:
  6037.  
  6038.                                   %%%%%%%%%%%%%%%
  6039.                                   %             %
  6040.                                   %     WiP     %
  6041.                                   %  *help      %
  6042.                                   %    INC032   %
  6043.                                   %    CONTROL  %
  6044.                                   %   tax       %
  6045.                                   %    FINANCE  %
  6046.                                   %             %
  6047.                                   %             %
  6048.                                   %%%%%%%%%%%%%%%
  6049.  
  6050.  
  6051.       Special Properties of The Current Task
  6052.       --------------------------------------
  6053.       The top task displayed in the Work-in-Progress  list  is  always  the
  6054.       active  task, and is shown in the Context Area. Two function keys, F2
  6055.       and F3, allow you to perform operations on the current task.  If  you
  6056.       press  F2 (the "Edit" key), a menu will be presented, listing all the
  6057.       things you can do to the task. If, instead, you press F3, the  editor
  6058.       will be invoked on the task notes for the current task.
  6059.  
  6060.  
  6061.       Selecting Things on the WiP Display
  6062.       -----------------------------------
  6063.       It  is  easy  to  move around among several directories in connection
  6064.       with  a   task.   For   example,   to   return   to   the   directory
  6065.       C:\INC032\CONTROL  in the above example, simply select "CONTROL" from
  6066.       the WiP area of the main display using the mouse, or type "W" to  get
  6067.       the  longer display (the second display above), and "2" to select the
  6068.       desired directory.
  6069.  
  6070.       It is also easy to use this display to  move  among  several  current
  6071.       tasks,  by  selecting  the  task  instead  of the directory. Thus, to
  6072.       switch to work on the income tax  return,  above,  one  would  select
  6073.       "tax" from the main display just above, or type "W" and "t" to select
  6074.       that  task  using  the  WiP display itself. This would make "tax" the
  6075.  
  6076.  
  6077.    InContxt.DOC                      -98-                      January 1993
  6078.  
  6079.  
  6080.  
  6081.  
  6082.    InContext User Guide                   TIME, PLANS, AND WORK-IN-PROGRESS
  6083.  
  6084.  
  6085.       current task, and its directory the current directory.
  6086.  
  6087.  
  6088.       Popping the Top Item off the WiP Display
  6089.       ----------------------------------------
  6090.       The WiP display actually works like a stack. If you select a new task
  6091.       that is not already on the list, it will be added at the top  of  the
  6092.       list. The bottom task may be pushed off the list, if the list already
  6093.       contains nine tasks.
  6094.  
  6095.       Similarly,  if you select a new directory not already on the list, it
  6096.       will become directory number 1 (the active directory), and  a  direc-
  6097.       tory will be pushed off the bottom of the list, if the list is full.
  6098.  
  6099.       Just  as  you  can add new tasks and directories to the WiP list, you
  6100.       can also "pop" the top item off that list. This uses the @Pop command
  6101.       from the command bar of the WiP display.  If  there  is  a  directory
  6102.       listed under the top task, it will be popped off the list. Otherwise,
  6103.       the  top  task  will  be  popped off the list. This operation is also
  6104.       available from the main display, using function key F6 or the  middle
  6105.       mouse button.
  6106.  
  6107.       An  simple  example  will  illustrate how this can be useful. Suppose
  6108.       that, in performing the "help" task shown above, it becomes necessary
  6109.       to go to another directory to find a file, in order to copy  it  into
  6110.       the current directory. This might be done in the following way:
  6111.  
  6112.           1. Use  the  Space  or Go command to go to the directory in ques-
  6113.              tion.
  6114.  
  6115.           2. Find and select the desired file.
  6116.  
  6117.           3. Select the "Take" action.
  6118.  
  6119.           4. Press F6, to pop the top directory off  the  stack,  returning
  6120.              you to the original directory.
  6121.  
  6122.           5. Select the "Put-obj" action.
  6123.  
  6124.  
  6125.  
  6126.       Selecting Today's Tasks
  6127.       -----------------------
  6128.       Selecting  the  @Today  command  from the WiP Display command bar (or
  6129.       pressing Alt-T from the main display)  initializes  the  WiP  Display
  6130.       from the list of tasks shown for today in the Time Display. This is a
  6131.       very convenient starting place; you might even want to use a
  6132.       "startup"  macro  to do this automatically when you initialize InCon-
  6133.       text (see "Macros" section of the "Classes and Actions" chapter).
  6134.  
  6135.  
  6136.    InContxt.DOC                      -99-                      January 1993
  6137.  
  6138.  
  6139.  
  6140.  
  6141.    InContext User Guide                   TIME, PLANS, AND WORK-IN-PROGRESS
  6142.  
  6143.  
  6144.       Clearing the WiP List
  6145.       ---------------------
  6146.       To remove all tasks and directories from the WiP list, simply  select
  6147.       the @Clear command from the WiP Display. This will allow you to start
  6148.       from  scratch, adding only those tasks you choose to attend to at any
  6149.       given time.
  6150.  
  6151.  
  6152.       Interruptions
  6153.       -------------
  6154.       Sometimes, things happen which create an interruption to the work  at
  6155.       hand.  For example, you may get a phone call which requires you to go
  6156.       look in two or three different directories for information desired by
  6157.       the caller. It is inconvenient and confusing if all these directories
  6158.       become associated with the task you were performing before the  phone
  6159.       rang.  By  selecting the @Interrupt command from the WiP Display com-
  6160.       mand bar (or pressing Alt-I, or just 'I', from the Main Display), you
  6161.       can cause this to be done as an "Interruption or  Unspecified  Task".
  6162.       When  you pop this task off the WiP list (or even select it when it's
  6163.       at the top of that list), the task and all its  directories  will  be
  6164.       removed,  returning you to the context you were in at the time of the
  6165.       interruption.
  6166.  
  6167.  
  6168.  
  6169.  
  6170.  
  6171.  
  6172.  
  6173.  
  6174.  
  6175.  
  6176.  
  6177.  
  6178.  
  6179.  
  6180.  
  6181.  
  6182.  
  6183.  
  6184.  
  6185.  
  6186.  
  6187.  
  6188.  
  6189.  
  6190.  
  6191.  
  6192.  
  6193.  
  6194.  
  6195.    InContxt.DOC                      -100-                     January 1993
  6196.  
  6197.  
  6198.  
  6199.  
  6200.    InContext User Guide                           MORE COMMANDS AND OPTIONS
  6201.  
  6202.  
  6203.        
  6204.                          +---------------------------+
  6205.                          | MORE COMMANDS AND OPTIONS |
  6206.                          +---------------------------+
  6207.  
  6208.  
  6209.  
  6210.    More Commands
  6211.    -------------
  6212.  
  6213.  
  6214.       Several less-commonly-used commands are available  to  you  from  the
  6215.       "More"  (additional  commands)  menu. When you select "More" from the
  6216.       Command Bar, the list of miscellaneous commands will appear, as shown
  6217.       below.
  6218.  
  6219.       The commands are:
  6220.  
  6221.          Create   This command allows you to create new objects and  direc-
  6222.                   tories.  See  the  section  below,  "Creating Objects and
  6223.                   Directories".
  6224.  
  6225.                   You can create an object from the Main Display by  press-
  6226.                   ing function key F9.
  6227.  
  6228.          DOS      This  command invokes the MS-DOS command interpreter as a
  6229.                   separate process under InContext. There, you can  execute
  6230.                   MS-DOS  commands.  When you're finished, type "exit", and
  6231.                   you will return to InContext.
  6232.  
  6233.          Execute  This command allows you to type a single DOS command at a
  6234.                   time, and executes it, returning to InContext immediately
  6235.                   when the command has finished executing. Upon return, you
  6236.                   may type another DOS command,  or  just  press  ENTER  to
  6237.                   return to the regular command mode.
  6238.  
  6239.                   InContext  remembers  the last ten DOS commands. Once you
  6240.                   select "Execute", you can move up and down this  "command
  6241.                   stack"  by  pressing PgUp and PgDn. Commands on the stack
  6242.                   can be edited for re-use.
  6243.  
  6244.                   This command is also available  directly  from  the  Main
  6245.                   Display, by pressing the 'E' key.
  6246.  
  6247.          Find     This  command  allows  you to search an entire disk drive
  6248.                   for objects having a particular name. When Find has  been
  6249.                   selected, you will be asked for a search string. Ordinary
  6250.                   MS-DOS wildcards ('*', '?') may be used in specifying the
  6251.                   search.
  6252.  
  6253.  
  6254.    InContxt.DOC                      -101-                     January 1993
  6255.  
  6256.  
  6257.  
  6258.  
  6259.    InContext User Guide                           MORE COMMANDS AND OPTIONS
  6260.  
  6261.  
  6262.                   This  command  is  also  available directly from the main
  6263.                   display, by just pressing the "F" key.
  6264.  
  6265.          Lines    If you have an EGA or VGA display adapter,  this  command
  6266.                   toggles  back and forth between the high-density and low-
  6267.                   density hardware fonts. On an EGA, for example,  repeated
  6268.                   uses of this command will cause your display to alternate
  6269.                   between a 43-line display and a 25-line display.
  6270.  
  6271.                   NOTE:  if  you enter InContext using a soft display font,
  6272.                   use of this command will substitute the  hardware  fonts,
  6273.                   and  InContext  cannot  restore  the soft fonts. You will
  6274.                   have to reload them with your soft-font-loader. This  can
  6275.                   be done either from within InContext, or after exiting.
  6276.  
  6277.                   This  command  is  also  available directly from the Main
  6278.                   Display, by pressing the 'L' key.
  6279.  
  6280.          Mode     This command allows you  to  cycle  through  the  display
  6281.                   formats available for the Main Display. For more informa-
  6282.                   tion,  see the later section on "Format and User Informa-
  6283.                   tion Options". This command can also be selected from the
  6284.                   Main Display, by pressing function key F8.
  6285.  
  6286.          Note     This command allows you to edit the task notes associated
  6287.                   with the currently selected task, if there  is  one.  Al-
  6288.                   though  it  is not shown on the Main Display Command Bar,
  6289.                   this function is also available there, by  just  pressing
  6290.                   'N', or function key F3.
  6291.  
  6292.          Options  This command allows you to alter many optional aspects of
  6293.                   InContext  behavior.  See section below, "Changing InCon-
  6294.                   text Options".
  6295.  
  6296.          Relog    This command causes InContext to update its log of either
  6297.                   the current directory or the entire current drive. If you
  6298.                   perform MS-DOS commands outside of InContext, the log may
  6299.                   become outdated and not show you all the  directories  or
  6300.                   files. Use this to bring it up to date. For more informa-
  6301.                   tion,  see  the  later section of this chapter, "Changing
  6302.                   Disk Drive Options".
  6303.  
  6304.                   From the Main Display, you can relog the  current  direc-
  6305.                   tory by just pressing the 'R' key.
  6306.  
  6307.          Screen   This  command  refreshes the InContext display. Use it if
  6308.                   the display is somehow  overwritten,  the  cursor  disap-
  6309.                   pears,  etc. If a procedure that you use regularly causes
  6310.                   the cursor to disappear, add the "!resetMouse" command to
  6311.  
  6312.  
  6313.    InContxt.DOC                      -102-                     January 1993
  6314.  
  6315.  
  6316.  
  6317.  
  6318.    InContext User Guide                           MORE COMMANDS AND OPTIONS
  6319.  
  6320.  
  6321.                   the procedure definition.
  6322.  
  6323.          User     InContext allows a PC  to  have  multiple,  one-at-a-time
  6324.                   users  whose  task  lists  and  configuration preferences
  6325.                   differ. This command allows you to change users, in  such
  6326.                   an environment. See the section below, "Multiple Users".
  6327.  
  6328.  
  6329.  
  6330.    Creating Objects and Directories
  6331.    --------------------------------
  6332.  
  6333.       It's easy to create new objects or directories. Select the More menu,
  6334.       and  choose the "Create" command. You'll be asked whether you want to
  6335.       create an object or a directory.
  6336.  
  6337.       If you select "Directory", you will be asked to provide  an  ordinary
  6338.       MS-DOS  name  for  the new directory. If you provide a directory name
  6339.       that does not conflict with a file or directory name already in  use,
  6340.       a  new  subdirectory will be created under the current directory. You
  6341.       will find yourself moved into the new subdirectory automatically.
  6342.  
  6343.       If you select "Object", you will be asked to specify first the  class
  6344.       of  the  new  object,  and  then its filename prefix. Thus, to create
  6345.       "mynew.wk1", you would respond  "wk1"  to  the  class  question,  and
  6346.       "mynew"  to  the  filename  prefix question. You can create an object
  6347.       directly from the Main Display, by just pressing function key F9.
  6348.  
  6349.       When you create a new object, InContext first looks to see whether or
  6350.       not you have specified a template for the class. A template is a file
  6351.       which contains the exact information you  would  like  in  any  newly
  6352.       created  object  of a particular class. For example, if your initials
  6353.       are "hrr", you might wish to create an "hrr" class to  use  for  your
  6354.       business  letters.  The template for this class would be a file named
  6355.       "hrr.tpl". You would create the template using your  word  processor,
  6356.       and  you would set it up to contain an "empty" letter, including your
  6357.       letterhead and closing, with space indicated for the recipient's name
  6358.       and address, salutation, and text.
  6359.  
  6360.       If InContext finds such a template for the  requested  class,  a  new
  6361.       object will be created in the current directory by simply copying the
  6362.       template.  You  will  then be able to perform, on the new object, the
  6363.       actions defined for its class. Among these would usually be an "edit"
  6364.       operation, which in the case of the  "hrr"  letterhead  would  invoke
  6365.       your word processor, allowing you to complete the letter.
  6366.  
  6367.       If  InContext  does  not  find a template for the requested class, it
  6368.       offers to create an empty file.
  6369.  
  6370.  
  6371.  
  6372.    InContxt.DOC                      -103-                     January 1993
  6373.  
  6374.  
  6375.  
  6376.  
  6377.    InContext User Guide                           MORE COMMANDS AND OPTIONS
  6378.  
  6379.  
  6380.       For information about creating  new  object  classes,  including  the
  6381.       creation of templates for those classes, see the chapter "Classes and
  6382.       Actions".
  6383.  
  6384.  
  6385.    Changing InContext Options
  6386.    --------------------------
  6387.  
  6388.       Quite  a  few  aspects of InContext behavior are subject to your con-
  6389.       trol. Many of these are controlled  by  how  you  set  the  program's
  6390.       options.  This is done by selecting "More" from the Main Display, and
  6391.       then selecting "Options". The resulting menu is shown on the  display
  6392.       below.
  6393.  
  6394.        %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  6395.        %                                                                   %
  6396.        %  --------------------------------------------------==More==-----  %
  6397.        %  =Select=desired=command========================================  %
  6398.        %  | Create  -- Create a new object or subdirectory              |  %
  6399.        %  | DOS     -- Start DOS subshell (type "exit" to return)       |  %
  6400.        %  | Execute -- Execute a single DOS command (no subshell)       |  %
  6401.        %  | Find  # -- Find object by DOS filename (wildcards OK)       |  %
  6402.        %  | Lines   -- Toggle 50-line display ON                        |  %
  6403.        %  | Mode    -- Change main display mode                         |  %
  6404.        %  | Note    -- Edit notes associated with currently active task |  %
  6405.        %  | Options -- Change configuration options                     |  %
  6406.        %  | Relog   -- Update file/directory list                       |  %
  6407.        %  | Screen  -- Refresh screen                                   |  %
  6408.        %  | User    -- Change users                                     |  %
  6409.        %  +-------------------------------------------------------------+  %
  6410.        %                                                                   %
  6411.        %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  6412.  
  6413.  
  6414.       Changing the Display Colors
  6415.       ---------------------------
  6416.       To  change  display  colors, select the "More" menu, followed by "Op-
  6417.       tions" and "Colors". The display that results is shown below.
  6418.  
  6419.  
  6420.  
  6421.  
  6422.  
  6423.  
  6424.  
  6425.  
  6426.  
  6427.  
  6428.  
  6429.  
  6430.  
  6431.    InContxt.DOC                      -104-                     January 1993
  6432.  
  6433.  
  6434.  
  6435.  
  6436.    InContext User Guide                           MORE COMMANDS AND OPTIONS
  6437.  
  6438.  
  6439.       %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  6440.       %                                                                      %
  6441.       %                                                          ==More====  %
  6442.       %  ==Commands=Look=Like=This:==Ordinary==Selected====================  %
  6443.       %  |                                                                |  %
  6444.       %  | To change foreground, press:   To change background:           |  %
  6445.       %  |     F1 = Ordinary text #         1 = Ordinary background       |  %
  6446.       %  |     F2 = Bold text (background not separately changeable)      |  %
  6447.       %  |                                                                |  %
  6448.       %  |     F3===Editable=text           3 = Editable background       |  %
  6449.       %  |                                                                |  %
  6450.       %  |     F4 = Available commands      4 = Command background        |  %
  6451.       %  |     F5 = Command letters (background not separately changeable)|  %
  6452.       %  |                                                                |  %
  6453.       %  |     F6 = Selected command        6 = Selected background       |  %
  6454.       %  |                                                                |  %
  6455.       %  |     F8 = Error messages          8 = Error background          |  %
  6456.       %  |                                                                |  %
  6457.       %  |     F9 = Cursor color            F10 = Restore original colors |  %
  6458.       %  |                                                                |  %
  6459.       %  +=Error=messages=look=like=this==================================+  %
  6460.       %                                                                      %
  6461.       %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  6462.  
  6463.       You can change any background or foreground color used  by  InContext
  6464.       (except the black that's used to create a "shadow" effect for some of
  6465.       the  windows).  To  do  so, just press the indicated key or place the
  6466.       cursor on the description of the color you want to change  and  press
  6467.       ENTER  or  the  left  mouse  button. The selected information will be
  6468.       displayed in the next available color. The effect will be immediately
  6469.       visible in the color-change window. By repeating the  operation,  you
  6470.       can cycle through all the colors, eventually returning you to the one
  6471.       you started with. On most color displays, 16 color choices are avail-
  6472.       able.
  6473.  
  6474.       If  you are using a monochrome display, the "color" choices available
  6475.       to you are limited to black, white, and bright white.  Not  all  com-
  6476.       binations  are allowable, either. As a result, you may see some unex-
  6477.       pected changes when you alter the colors. If you change a  background
  6478.       color,  for  example,  the  corresponding  foreground  color may also
  6479.       change in order to produce a "legal" combination.
  6480.  
  6481.       Feel free to experiment. You can always return to the original set of
  6482.       colors by pressing function key F10.
  6483.  
  6484.  
  6485.  
  6486.  
  6487.  
  6488.  
  6489.  
  6490.    InContxt.DOC                      -105-                     January 1993
  6491.  
  6492.  
  6493.  
  6494.  
  6495.    InContext User Guide                           MORE COMMANDS AND OPTIONS
  6496.  
  6497.  
  6498.       Changing Disk Drive Options
  6499.       ---------------------------
  6500.       You can exert considerable control over InContext's  start-time  per-
  6501.       formance  by  selecting  the right disk-drive options. The disk drive
  6502.       options display appears when you select "More", followed by "Options"
  6503.       and "Disk".
  6504.  
  6505.                     %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  6506.                     %                                          %
  6507.                     %  ==Change=Disk=Drive=and=Logging=Option  %
  6508.                     %  |                                       %
  6509.                     %  |           Type     Logging   Display  %
  6510.                     %  | Drive A:#Diskette  Current   Current  %
  6511.                     %  | Drive B: Diskette  Current   Current  %
  6512.                     %  | Drive C: HardDisk  On Disk   Current  %
  6513.                     %  | Drive D: HardDisk  As Need   Current  %
  6514.                     %  | Drive E: Inactive                     %
  6515.                     %  | Drive F: Inactive                     %
  6516.                     %  | Drive G: Inactive                     %
  6517.                     %                                          %
  6518.                     %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  6519.  
  6520.       This display has an entry for each of  the  26  possible  disk  drive
  6521.       letters.  You  should set up the values in this display to correspond
  6522.       to the drives you actually have on your system. The display above  is
  6523.       for  a  system with two separate diskette drives, a hard drive, and a
  6524.       RAMdisk "drive".
  6525.  
  6526.       You can cycle among the possible values for each drive by placing the
  6527.       cursor on the appropriate line and pressing ENTER or the  left  mouse
  6528.       button. The display below shows all possible values.
  6529.  
  6530.                      %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  6531.                      %                                        %
  6532.                      %            Type     Logging   Display  %
  6533.                      %  Drive N: Inactive                     %
  6534.                      %  Drive O: Diskette  Current   Current  %
  6535.                      %  Drive P: HardDisk  On Disk   Current  %
  6536.                      %  Drive Q: HardDisk  On Disk   Always   %
  6537.                      %  Drive R: HardDisk  At Start  Current  %
  6538.                      %  Drive S: HardDisk  At Start  Always   %
  6539.                      %  Drive T: HardDisk  As Need   Current  %
  6540.                      %  Drive U: HardDisk  As Need   Always   %
  6541.                      %                                        %
  6542.                      %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  6543.  
  6544.       You  should  make  sure that any unavailable drive letters are marked
  6545.       "Inactive". Also, if you have only one diskette drive (A), you should
  6546.       probably mark drive A as "Diskette" and drive B as  "Inactive",  even
  6547.  
  6548.  
  6549.    InContxt.DOC                      -106-                     January 1993
  6550.  
  6551.  
  6552.  
  6553.  
  6554.    InContext User Guide                           MORE COMMANDS AND OPTIONS
  6555.  
  6556.  
  6557.       though you can address the drive by both letters.
  6558.  
  6559.       On  a  hard  drive, you have some choices to make about disk logging.
  6560.       The possible values are:
  6561.  
  6562.          On Disk  The full drive is logged, and the log is stored  on  disk
  6563.                   when you exit InContext, so that it can be read in as you
  6564.                   start  your  next  session.  This  speeds  up the program
  6565.                   startup, but will keep a current log only if you  do  all
  6566.                   your  work  from within InContext. Even if you don't, you
  6567.                   may prefer to use this option and  do  occasional  manual
  6568.                   relogging (use the "More Relog" command).
  6569.  
  6570.          At Start The  full  drive  is logged at the start of each session,
  6571.                   and the log is not saved from session  to  session.  This
  6572.                   guarantees  you  a  full,  current  log when you start up
  6573.                   InContext, but it takes extra time  at  program  startup.
  6574.                   Because  InContext  does  its drive logging mostly in the
  6575.                   background, this may not  bother  you.  However,  if  you
  6576.                   attempt  an  operation  that relies on the full drive log
  6577.                   before the logging process is  complete,  you  will  then
  6578.                   have  to  wait.  This is the recommended setting for most
  6579.                   users.
  6580.  
  6581.          As Need  Only selected portions of the drive are logged,  and  the
  6582.                   log  is  extended  only  as  needed.  This  gives you the
  6583.                   fastest performance, and may be the best setting for some
  6584.                   users. With this option selected, initial logging is done
  6585.                   for the root directory and for any directories  to  which
  6586.                   you  have assigned names (the "Go" list), since those are
  6587.                   the places you're most likely to need information  about.
  6588.                   (A  few  other  directories  are also logged, to optimize
  6589.                   performance.) This works  well,  except  that  the  Space
  6590.                   Display  will  contain only a partial directory tree. You
  6591.                   can extend it to a complete tree at any time by  manually
  6592.                   relogging the whole drive.
  6593.  
  6594.  
  6595.       You  can  also cause a drive's full directory tree to be displayed in
  6596.       the Space Display even if it is not the current drive,  by  selecting
  6597.       "Always" rather than "Current" as the value for the "Display" field.
  6598.  
  6599.       InContext  supports SUBST drives, but including them as active drives
  6600.       on the list above can cause a problem. Let's suppose  you  have  hard
  6601.       drive  C, and you use SUBST to assign drive letter E to the directory
  6602.       "C:\GOODSTUF". Any time you do work in the directory, InContext  will
  6603.       update  its list of the objects and subdirectories there, but it will
  6604.       do so only for one of the two drive letters. If  you  make  a  change
  6605.       there  when  working  on the C drive, and then go to the E drive, the
  6606.  
  6607.  
  6608.    InContxt.DOC                      -107-                     January 1993
  6609.  
  6610.  
  6611.  
  6612.  
  6613.    InContext User Guide                           MORE COMMANDS AND OPTIONS
  6614.  
  6615.  
  6616.       change will not necessarily be reflected. If you make  use  of  SUBST
  6617.       drives, you may want to manually relog the directory as you enter.
  6618.  
  6619.  
  6620.       Changing Subprogram Execution Options
  6621.       -------------------------------------
  6622.       InContext  swaps  most  of  itself  (all but about 11K) out of memory
  6623.       whenever it executes an MS-DOS command. You can control how  much  is
  6624.       swapped  out,  and  where the information is placed. You do this from
  6625.       the Execution Options display,  which  you  can  reach  by  selecting
  6626.       "More", followed by "Options" and "Exec".
  6627.  
  6628.                %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  6629.                %                                                   %
  6630.                %  ==Change=DOS=Procedure=Execution=Options=======  %
  6631.                %  |                                                %
  6632.                %  | Control over InContext Memory Swapping         %
  6633.                %  |    Allow Swap to EMS Memory? Yes#              %
  6634.                %  |                                                %
  6635.                %  |    Swap Path for Swapping to Disk              %
  6636.                %  |       d:\;c:\tmp;c:\;========================  %
  6637.                %  |                                                %
  6638.                %  |    Default Sub-Process Memory Request ==0      %
  6639.                %  |                                                %
  6640.                %  | Other Procedure-Execution Options              %
  6641.                %  |    Temporary Batch File Path or Name           %
  6642.                %  |       c:\tmp\temp.bat========================  %
  6643.                %  |                                                %
  6644.                %  |    Directory for Storage of Temporary Files    %
  6645.                %  |       c:\tmp=================================  %
  6646.                %  |                                                %
  6647.                %  |    Pause after single DOS commands? Yes        %
  6648.                %  |                                                %
  6649.                %  +----------------------------------------------  %
  6650.                %                                                   %
  6651.                %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  6652.  
  6653.       Using this display, you may enable or disable swapping to EMS. Unless
  6654.       you  take  some action here, InContext will automatically make use of
  6655.       expanded memory for its swapping, if you have it. You can disable it,
  6656.       though, if you would prefer that swapping be to  disk.  InContext  is
  6657.       compatible  with  EMS  systems  based  on the LIM 3.2 standard or any
  6658.       later standard.
  6659.  
  6660.       Whether you're using EMS or not, you should set up a valid swap path.
  6661.       This string is interpreted in much the same fashion as  a  DOS  path.
  6662.       Because  it  is  under your control, you can set up a priority scheme
  6663.       for selecting the directory in which the swapped information will  be
  6664.       written,  if  EMS  is  unavailable  or  turned  off.  The path shown,
  6665.  
  6666.  
  6667.    InContxt.DOC                      -108-                     January 1993
  6668.  
  6669.  
  6670.  
  6671.  
  6672.    InContext User Guide                           MORE COMMANDS AND OPTIONS
  6673.  
  6674.  
  6675.       "D:\;C:\TMP;C:\;", is from a system in which the D: drive is RAMdisk.
  6676.       Thus, with this path, and EMS enabled, InContext will  first  try  to
  6677.       write  most of itself out to EMS memory (the fastest possibility). If
  6678.       there is insufficient EMS memory available, it will write to  RAMdisk
  6679.       ("D:").  If  there  isn't enough space there, it will try to write to
  6680.       the directory "C:\TMP", then to the "C:\" root directory, and finally
  6681.       to the current directory. This may seem like overkill, but this  path
  6682.       would still work if EMS and RAMdisk memory were full and the "C:\TMP"
  6683.       directory had been deleted.
  6684.  
  6685.       If you're not using EMS memory for the swapping, you may occasionally
  6686.       find  that swap files are left behind. This would occur, for example,
  6687.       if you were executing another program under InContext and you  turned
  6688.       your  computer  off,  or rebooted. These files have funny names, like
  6689.       "0e3c101e". If you're not using EMS memory, such  a  swap  file  will
  6690.       appear  each  time  you execute a subprogram, and will disappear each
  6691.       time you return to InContext from  that  subprogram.  DO  NOT  DELETE
  6692.       these  swap  files  from  within  the  subprogram, as it will then be
  6693.       impossible for InContext to reload its  swapped-out  information.  It
  6694.       is,  however,  OK to delete them using the InContext delete operation
  6695.       itself, since any swap file you can see in the InContext Main Display
  6696.       is a left-over from  some  previous  aborted  operation.  You  should
  6697.       probably  check  for  these  files  once in awhile, since they can be
  6698.       fairly large, and would add up if left there.
  6699.  
  6700.       You may also specify how much memory you would like free  for  MS-DOS
  6701.       command  executions.  Most users will want to leave this value set to
  6702.       zero, which causes InContext to free as much memory as  possible.  If
  6703.       you use only programs that take relatively little memory, though, you
  6704.       can speed up their execution by setting this to an appropriate value.
  6705.       For  example,  to  attempt to leave 420K bytes of memory for all sub-
  6706.       processes executed under InContext, simply place the number "420"  in
  6707.       the Memory Request field.
  6708.  
  6709.       Whenever  InContext  needs  to execute two or more MS-DOS commands in
  6710.       sequence, it creates a batch file and then executes  that  file.  You
  6711.       can  control  where the batch file is written. If you have a RAMdisk,
  6712.       that is probably the preferred location. The batch file will only  be
  6713.       there  briefly,  and it's small, but writing it to RAMdisk will speed
  6714.       things up considerably. The value shown above,  "D:\temp.bat",  would
  6715.       cause  the  generated  batch file to have the name "TEMP.BAT", and be
  6716.       located in the root directory of drive "D:".
  6717.  
  6718.       Under some circumstances, InContext generates  temporary  files  (for
  6719.       example,  when  printing  information using an external print program
  6720.       you specify in the incPrint macro). Since these files may  be  large,
  6721.       you  might  choose to have them written on a different drive than the
  6722.       smaller batch file above. You might find it  appropriate  to  have  a
  6723.       "tmp" directory on your main drive for such purposes.
  6724.  
  6725.  
  6726.    InContxt.DOC                      -109-                     January 1993
  6727.  
  6728.  
  6729.  
  6730.  
  6731.    InContext User Guide                           MORE COMMANDS AND OPTIONS
  6732.  
  6733.  
  6734.       When  you  execute  single DOS commands, by selecting "More" and "Ex-
  6735.       ecute" (or by pressing 'E' from the Main Display), you  may  wish  to
  6736.       have  an automatic pause so you can view the results before returning
  6737.       to the main InContext display. The "Pause after single DOS commands?"
  6738.       option allows you a choice regarding the pause.
  6739.  
  6740.  
  6741.       Changing Formats and User Information
  6742.       -------------------------------------
  6743.       To change user name, registration number, date/time formats,  or  the
  6744.       format  of the Main Display, select "More", followed by "Options" and
  6745.       "Formats".
  6746.  
  6747.       These fields are all editable in the  usual  ways  (see  "Editing  in
  6748.       InContext",  in  the  chapter  "Interacting with InContext"). You may
  6749.       enter your name and registration number by typing in the  appropriate
  6750.       fields.  Changing  the  User  Name  field  "unlocks" the Registration
  6751.       Number field so you can enter a  registration  number.  Typing  in  a
  6752.       valid  registration  number causes InContext to cease its startup and
  6753.       ending "shareware" displays, and eliminates the  "Unregistered"  com-
  6754.       ment from the Main Display. The registration number is displayed only
  6755.       at the time you enter it.
  6756.  
  6757.       You may cycle through the supported formats for date and time by just
  6758.       placing  the  cursor  on the relevant field and pressing ENTER or the
  6759.       left mouse button.
  6760.  
  6761.       The most important use of this option-setting display, though, is the
  6762.       control it gives you over the  contents  of  the  Main  Display.  The
  6763.       format,  spacing, and contents of that display is entirely under user
  6764.       control, and you can  even  define  multiple  formats  with  separate
  6765.       purposes, if you like.
  6766.  
  6767.       The  format  of the Main Display is controlled by a character string,
  6768.       which you can alter by editing it. For example, the string
  6769.  
  6770.                   "ttttttttt hhhhhhh | vvvvvvvv ccc oooooooooooo"
  6771.  
  6772.       causes the Main Display to contain
  6773.  
  6774.                 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  6775.                 %                                                  %
  6776.                 %   Today     Hours  |  Views  Class   Objects     %
  6777.                 %   devin    12a.... | ALL      ALL  aspaddr.wdx   %
  6778.                 %  *apps====  1 .... | Archive  apt     beta.wdx   %
  6779.                 %  *docs====  2 .... | Chess    doc incontxt.wdx   %
  6780.                 %                                                  %
  6781.                 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  6782.  
  6783.  
  6784.  
  6785.    InContxt.DOC                      -110-                     January 1993
  6786.  
  6787.  
  6788.  
  6789.  
  6790.    InContext User Guide                           MORE COMMANDS AND OPTIONS
  6791.  
  6792.  
  6793.       Notice how the "Today" portion of  the  display  corresponds  to  the
  6794.       columns  containing  the  letter 't', "Hours" to 'h', "Views" to 'v',
  6795.       and so on. Even the vertical line results from a vertical bar charac-
  6796.       ter in the format control string.
  6797.  
  6798.       In most cases, you can provide for multiple columns  of  information,
  6799.       simply  by  devoting enough columns to a single information type. For
  6800.       example, in a directory with lots  of  objects,  the  format  control
  6801.       string  containing  40 'o' characters in succession results in a dis-
  6802.       play with three columns of object names.
  6803.  
  6804.       For each Main Display format that you want to enter  or  change,  you
  6805.       should  simply  enter  a  name  for  the format, and a format control
  6806.       string, both in the appropriate fields.
  6807.  
  6808.              %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  6809.              %                                                       %
  6810.              %                                    1         2        %
  6811.              %     Main display format names:  Work====  Objects=    %
  6812.              %                                                       %
  6813.              %     Main display format 1:                            %
  6814.              %  ttttttttt=hhhhhhh=|=vvvvvvvv=ccc=oooooooooooo=aaaaa  %
  6815.              %                                                       %
  6816.              %     Main display format 2:                            %
  6817.              %  =vvvvvvvv=ccc=ooooooooooooooooooooooooooooooooooooo  %
  6818.              %                                                       %
  6819.              %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  6820.  
  6821.       In the display above, the name of the first  format  (also  called  a
  6822.       "display  Mode"  elsewhere)  is  "Work".  The  format  control string
  6823.       provides for left-to-right  presentation  of  the  "Today",  "Hours",
  6824.       "View",  "Class",  "Objects",  in  the  portion  of the string that's
  6825.       visible here.
  6826.  
  6827.       Once you've defined them, you will  be  able  to  cycle  among  these
  6828.       display modes from the Main Display using the "More Mode" command (or
  6829.       function  key F8). The name of the selected mode will be displayed at
  6830.       the bottom. Any display formats whose format control strings are left
  6831.       blank are regarded as undefined.
  6832.  
  6833.       In addition to the space character and  the  vertical  bar  (|),  the
  6834.       characters  you  may  use in such a format specification are shown in
  6835.       the following table.
  6836.  
  6837.  
  6838.  
  6839.  
  6840.  
  6841.  
  6842.  
  6843.  
  6844.    InContxt.DOC                      -111-                     January 1993
  6845.  
  6846.  
  6847.  
  6848.  
  6849.    InContext User Guide                           MORE COMMANDS AND OPTIONS
  6850.  
  6851.  
  6852.        %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  6853.        %                                                                      %
  6854.        %  Letter  Meaning  Columns    Description                             %
  6855.        %  ------  -------  -------  -------------------------------           %
  6856.        %    t      Today      9*    Today's tasks                             %
  6857.        %    h      Hours      7*    Today's schedule                          %
  6858.        %    w      WiP       14     Work-in-Progress (10 cols. useful)        %
  6859.        %    W      WiP       43     Work-in-Progress, with descriptions       %
  6860.        %    p      Project    8     Names of defined projects                 %
  6861.        %    v      Views      8     Names of defined views                    %
  6862.        %    c      Classes    3     Classes present in current view           %
  6863.        %    o      Objects   12     Objects visible in current directory      %
  6864.        %    x      Objects   53     Objects, with object descriptions         %
  6865.        %    a      Actions    8     Actions performable on current object(s)  %
  6866.        %    g      Go         8     List of named directories                 %
  6867.        %    d      Do         8     List of location-independent procedures   %
  6868.        %    D      Do        42     Do procedures, with descriptions          %
  6869.        %    s      Subdirs   12(8)  Subdirectories of current directory       %
  6870.        %                            (8 cols if no filename extensions)        %
  6871.        %                                                                      %
  6872.        %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  6873.  
  6874.       In each case, the minimal number of columns is shown. Those  with  an
  6875.       asterisk by this number do not allow multiple-column display.
  6876.  
  6877.  
  6878.  
  6879.  
  6880.  
  6881.  
  6882.  
  6883.  
  6884.  
  6885.  
  6886.  
  6887.  
  6888.  
  6889.  
  6890.  
  6891.  
  6892.  
  6893.  
  6894.  
  6895.  
  6896.  
  6897.  
  6898.  
  6899.  
  6900.  
  6901.  
  6902.  
  6903.    InContxt.DOC                      -112-                     January 1993
  6904.  
  6905.  
  6906.  
  6907.  
  6908.    InContext User Guide                           MORE COMMANDS AND OPTIONS
  6909.  
  6910.  
  6911.       Video and Display Options
  6912.       -------------------------
  6913.       Several  display-related  configuration  options  can  be  changed by
  6914.       selecting the "More" menu, followed by  "Options"  and  "Video".  The
  6915.       display that results looks like this:
  6916.  
  6917.       %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  6918.       %                                                                       %
  6919.       %  Change=Video=and=Display=Options===================================  %
  6920.       %                                                                       %
  6921.       %   Case:        Upper/lower case for directory names and paths  UPPER  %
  6922.       %                Upper/lower case for object and class names     lower  %
  6923.       %                Upper/lower case for other names                Mixed  %
  6924.       %                                                                       %
  6925.       %   Disk:        Constantly display available disk space?        Yes    %
  6926.       %                                                                       %
  6927.       %   Directories: Display directory description rather than path? Yes    %
  6928.       %                                                                       %
  6929.       %   Mouse:  #    Double-click speed (milliseconds)               100    %
  6930.       %                Reverse mouse direction for left-handed user    No     %
  6931.       %                Mouse scroll rate (milliseconds)                250    %
  6932.       %                                                                       %
  6933.       %   Restore:     Restore previous screen image on exit?          No     %
  6934.       %                                                                       %
  6935.       %   Snow:        Suppress special anti-snow treatment for CGA?   N/A    %
  6936.       %                                                                       %
  6937.       %                                                                       %
  6938.       %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  6939.  
  6940.       To change any of these options, just place the cursor on the line you
  6941.       want  to  change  and press ENTER or the left mouse button. Repeating
  6942.       this action will allow you to cycle through the available  values  of
  6943.       the property in question.
  6944.  
  6945.       These options are discussed in more detail below.
  6946.  
  6947.          Case         Users vary in their preferences for upper case, lower
  6948.                       case,  or  mixed  case  for  various information. The
  6949.                       default arrangement seems to make it easier  to  dis-
  6950.                       criminate various kinds of information, especially in
  6951.                       the main display.
  6952.  
  6953.          Disk         You  can  turn off the automatic display of available
  6954.                       disk space, if you like.
  6955.  
  6956.          Directories  With this option set to "Yes", whenever you're  in  a
  6957.                       directory  to  which you have assigned a Description,
  6958.                       that description will appear in the context  area  at
  6959.                       the top of the display. If the option is set to "No",
  6960.  
  6961.  
  6962.    InContxt.DOC                      -113-                     January 1993
  6963.  
  6964.  
  6965.  
  6966.  
  6967.    InContext User Guide                           MORE COMMANDS AND OPTIONS
  6968.  
  6969.  
  6970.                       or  if  you're in a directory to which no Description
  6971.                       has been given, the full pathname  of  the  directory
  6972.                       will be displayed.
  6973.  
  6974.          Mouse        You can change the handedness of the mouse, and alter
  6975.                       the  speed  at  which  double-clicking and continuous
  6976.                       scrolling occur. Notice  that  these  latter  options
  6977.                       require that you specify an interval in milliseconds.
  6978.                       The larger the number, the slower things will happen.
  6979.  
  6980.          Restore      InContext  is normally intended to be invoked and run
  6981.                       for long periods, with your operations executed  from
  6982.                       inside  InContext.  Should  you  find  a way of using
  6983.                       InContext from another program, however, you may want
  6984.                       it to save the screen from which it was invoked,  and
  6985.                       to restore that screen on exit.
  6986.  
  6987.          Snow         Some  older  CGA  display  adapters produce a "snowy"
  6988.                       appearance if information is displayed without regard
  6989.                       to the state of the CGA. If you  have  this  problem,
  6990.                       setting  this  option  to  "Yes"  may  eliminate  the
  6991.                       problem, though at  the  cost  of  slowing  InContext
  6992.                       down.
  6993.  
  6994.  
  6995.  
  6996.  
  6997.  
  6998.  
  6999.  
  7000.  
  7001.  
  7002.  
  7003.  
  7004.  
  7005.  
  7006.  
  7007.  
  7008.  
  7009.  
  7010.  
  7011.  
  7012.  
  7013.  
  7014.  
  7015.  
  7016.  
  7017.  
  7018.  
  7019.  
  7020.  
  7021.    InContxt.DOC                      -114-                     January 1993
  7022.  
  7023.  
  7024.  
  7025.  
  7026.    InContext User Guide                           MORE COMMANDS AND OPTIONS
  7027.  
  7028.  
  7029.       Miscellaneous Options
  7030.       ---------------------
  7031.       Several miscellaneous configuration options can be changed by select-
  7032.       ing  the  "More" menu, followed by "Options" and "Miscellaneous". The
  7033.       display that results looks like this:
  7034.  
  7035.       %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  7036.       %                                                                      %
  7037.       %  Change=Miscellaneous=Options======================================  %
  7038.       %                                                                      %
  7039.       %  Editor:      Limit editor to files under (Kbytes)            =64    %
  7040.       %               Default tab setting for editor/viewer            3     %
  7041.       %            #  Backup dir  c:\brief\backup==========================  %
  7042.       %                                                                      %
  7043.       %  Objects:     Default display order for Objects Display       Class  %
  7044.       %               Display objects with "hidden" file attribute?   Obj D  %
  7045.       %                                                                      %
  7046.       %  Safety:      Require second verification before delete?      No     %
  7047.       %                                                                      %
  7048.       %  Sound:       Suppress sound when user action not allowed?    No     %
  7049.       %                                                                      %
  7050.       %  Printer:     Can print PC graphics characters?               No     %
  7051.       %               Pause after printing each page?                 No     %
  7052.       %               Perform page eject after printing?              No     %
  7053.       %                                                                      %
  7054.       %  Time:        Show how many months in "Months" display?        4     %
  7055.       %               Show how many weeks in "Weeks" display?          2     %
  7056.       %               Start "Weeks" display on what day?              Mon    %
  7057.       %                                                                      %
  7058.       %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  7059.  
  7060.       To change most of these options, just place the cursor  on  the  line
  7061.       you  want to change and press ENTER or the left mouse button. Repeat-
  7062.       ing this action will allow you to cycle through the available  values
  7063.       of  the  property  in  question.  The  "Limit  editor  to files under
  7064.       (Kbytes)" field is directly editable.
  7065.  
  7066.       These options are discussed in more detail below.
  7067.  
  7068.          Editor    The InContext internal  editor  is  intended  mainly  to
  7069.                    allow  rapid  editing  of  small  files (especially task
  7070.                    notes). The "Limit editor to files under (Kbytes)" field
  7071.                    sets an upper file-size limit on the use of the internal
  7072.                    editor. Whenever InContext tries to invoke the  internal
  7073.                    editor  on  a file larger than this limit (64 Kilobytes,
  7074.                    by default), an error occurs (unless you've  defined  an
  7075.                    alternative editor; see "Special Macros" in the "Classes
  7076.                    and Actions" chapter).
  7077.  
  7078.  
  7079.  
  7080.    InContxt.DOC                      -115-                     January 1993
  7081.  
  7082.  
  7083.  
  7084.  
  7085.    InContext User Guide                           MORE COMMANDS AND OPTIONS
  7086.  
  7087.  
  7088.                    "Default  tab  setting for editor/viewer" determines the
  7089.                    size of the indentations produced by the Tab  key.  This
  7090.                    default value can be over-ridden for particular classes.
  7091.  
  7092.                    The editor will automatically save backup copies of each
  7093.                    file  you  edit in the directory specified under "Backup
  7094.                    dir". If no directory is  specified,  no  backup  copies
  7095.                    will be made.
  7096.  
  7097.          Objects   The  "Default  display order" option allows you to alter
  7098.                    the default order in which objects are displayed in  the
  7099.                    Objects  display.  The  alternatives  are  the same ones
  7100.                    selectable from that display: "Class",  "Name",  "Date",
  7101.                    and  "Size".  This option has no effect on the main dis-
  7102.                    play.
  7103.  
  7104.                    The  "Display  objects  with  'hidden'  file  attribute"
  7105.                    option  allows more experienced users to display objects
  7106.                    marked with the MS-DOS "hidden" file attribute.  Options
  7107.                    are  "Never"  (recommended for beginners), "Obj Display"
  7108.                    (which  will  not  show  hidden  objects  on  the   main
  7109.                    display),  and "Always". If you choose to display hidden
  7110.                    objects, remember that IBMBIO.COM and IBMDOS.COM (in the
  7111.                    root directory) are important system files  that  should
  7112.                    be   left   alone.   Also   keep  in  mind  that  hidden
  7113.                    DESCRIPT.ION files are produced by InContext and by 4DOS
  7114.                    if you use the extended  file  descriptions  allowed  by
  7115.                    those programs.
  7116.  
  7117.          Safety    Novice  users  will probably prefer to leave this option
  7118.                    in its default setting, so that an extra verification is
  7119.                    required  before  deleting  anything.  More  experienced
  7120.                    users may wish to turn this feature off.
  7121.  
  7122.          Sound     If  you don't like "beeps" when you press the wrong key,
  7123.                    use this option to disable them.
  7124.  
  7125.          Printer   If your printer is capable of printing  the  special  PC
  7126.                    graphics  characters,  set  the  "Can  print PC graphics
  7127.                    characters" option to "Yes". Otherwise, leave it set  to
  7128.                    "No", and InContext will automatically substitute print-
  7129.                    able characters when it prints things.
  7130.  
  7131.                    If  you use a printer in which you have to feed paper by
  7132.                    hand, you'll want to set the "Pause after printing  each
  7133.                    page" option to "Yes".
  7134.  
  7135.                    If  you  find that the last page of each printout has to
  7136.                    be manually ejected, set the "Perform page  eject  after
  7137.  
  7138.  
  7139.    InContxt.DOC                      -116-                     January 1993
  7140.  
  7141.  
  7142.  
  7143.  
  7144.    InContext User Guide                           MORE COMMANDS AND OPTIONS
  7145.  
  7146.  
  7147.                    printing" option to "Yes".
  7148.  
  7149.          Time      Most  users  will  want  to  leave  these options alone.
  7150.                    However, if you use a special printing method,  you  may
  7151.                    want  to  change  the values of "Show how many months in
  7152.                    'Months' display" and "Show how many  weeks  in  'Weeks'
  7153.                    display". For example, if you use the 4PRINT program, to
  7154.                    print two pages side-by-side, and print on both sides of
  7155.                    each  page,  convenient  settings of these options are 4
  7156.                    and 2, respectively. Installing an alternative  printing
  7157.                    method  is  discussed  under  "Special  Macros",  in the
  7158.                    "Classes and Actions" chapter.
  7159.  
  7160.                    The "Start 'Weeks' display on what  day"  option  allows
  7161.                    you  to  print  weekly calendars starting on any desired
  7162.                    day of the week. These are very much like the commercial
  7163.                    organizer sheets available in hardcopy form.
  7164.  
  7165.  
  7166.  
  7167.    Multiple Users
  7168.    --------------
  7169.  
  7170.       InContext allows multiple users who share  a  single  PC  to  set  up
  7171.       separate  configuration  options  to  match their preferences, and to
  7172.       change from one user to another from  inside  the  program.  Although
  7173.       this  feature  works correctly in the current version, automated aids
  7174.       for its use are not yet implemented.
  7175.  
  7176.       If you want to use this feature, do the following:
  7177.  
  7178.          o  Go to the InContext directory (typically "C:\INCONTXT", but you
  7179.             may have chosen some other directory at installation time.
  7180.  
  7181.          o  Find all the files that start with the letters "xxx", and  make
  7182.             copies using the new user's three initials in place of the x's.
  7183.             (If  you  wish to use fewer than three initials, add x's at the
  7184.             end to make a total of three characters.) Make  sure  you  copy
  7185.             these  files, rather than renaming them. As an example, if your
  7186.             initials are "mar", you would copy the file  "XXXCONFG.DAT"  to
  7187.             "MARCONFG.DAT".
  7188.  
  7189.  
  7190.       Unless  you create a configuration file for the primary user, he will
  7191.       be known by the default initials, "xxx".
  7192.  
  7193.       You may now make use of the User command, by selecting  "More",  fol-
  7194.       lowed by "User". In response to the query, type your initials (in the
  7195.       example,  "mar")  and press ENTER. Changes you make to the configura-
  7196.  
  7197.  
  7198.    InContxt.DOC                      -117-                     January 1993
  7199.  
  7200.  
  7201.  
  7202.  
  7203.    InContext User Guide                           MORE COMMANDS AND OPTIONS
  7204.  
  7205.  
  7206.       tion will be saved for use by "mar", and will not affect other users.
  7207.       You may also invoke the program directly for a specified user with  a
  7208.       command-line argument:
  7209.  
  7210.            incontxt -u mar
  7211.  
  7212.       All  users  share  the  same set of object class templates and action
  7213.       definitions. Only the configuration information,  views,  tasks  (and
  7214.       hence, calendars), and task notes are stored separately on a user-by-
  7215.       user basis.
  7216.  
  7217.  
  7218.  
  7219.  
  7220.  
  7221.  
  7222.  
  7223.  
  7224.  
  7225.  
  7226.  
  7227.  
  7228.  
  7229.  
  7230.  
  7231.  
  7232.  
  7233.  
  7234.  
  7235.  
  7236.  
  7237.  
  7238.  
  7239.  
  7240.  
  7241.  
  7242.  
  7243.  
  7244.  
  7245.  
  7246.  
  7247.  
  7248.  
  7249.  
  7250.  
  7251.  
  7252.  
  7253.  
  7254.  
  7255.  
  7256.  
  7257.    InContxt.DOC                      -118-                     January 1993
  7258.  
  7259.  
  7260.  
  7261.  
  7262.    InContext User Guide                      EXAMPLES AND APPLICATION NOTES
  7263.  
  7264.  
  7265.        
  7266.                       +--------------------------------+
  7267.                       | EXAMPLES AND APPLICATION NOTES |
  7268.                       +--------------------------------+
  7269.  
  7270.  
  7271.  
  7272.    Usage Examples and Application Notes
  7273.    ------------------------------------
  7274.  
  7275.       For  additional  information  about ways of using InContext, the user
  7276.       can consult two sources:  (1)  Usage  Examples  and  (2)  Application
  7277.       Notes.
  7278.  
  7279.       Studying Usage Examples will help you pick up ideas and will increase
  7280.       your  understanding.  A Usage Example describes a particular approach
  7281.       to organizing a portion of your computer-based work environment.  One
  7282.       or  more  ways  of  achieving  this  organization are then described,
  7283.       typically ranging from a very simple implementation to a more sophis-
  7284.       ticated one.
  7285.  
  7286.       Because they are constantly being improved, the  Usage  Examples  are
  7287.       provided as part of the help system, rather than in hardcopy form. To
  7288.       see  them,  select  "Help",  followed by "How?", in order to view the
  7289.       help system index. Find and select the "Examples" entry.
  7290.  
  7291.       One Usage Example is printed below, to give  you  an  idea  of  their
  7292.       content.
  7293.  
  7294.       Application  Notes ("AppNotes") have a different purpose, though they
  7295.       can also be a useful source of understanding and  examples.  Applica-
  7296.       tion  Notes  help  you  incorporate other programs into your work en-
  7297.       vironment. Some of these programs may be used  as  tools  (a  viewer,
  7298.       print  utility, or whatever), while others may represent the applica-
  7299.       tions that you use to do your actual work (word processors or spread-
  7300.       sheet programs, for example). A  starter  set  of  application  notes
  7301.       comes  with the shareware version of InContext. Additional "AppNotes"
  7302.       are available to registered users, through our BBS or by mail.
  7303.  
  7304.       The starter AppNotes are found in the  APPNOTES.LZH  archive  in  the
  7305.       InContext  directory.  This  is an archive containing a collection of
  7306.       "app" files. The "app" files are themselves archives, which  must  be
  7307.       extracted before you can make use of them. To examine one, you should
  7308.       first  "Edit" the APPNOTES.LZH file. Select the AppNote you're inter-
  7309.       ested in, and extract it. Then exit the editor. You  will  find  that
  7310.       the  extracted "app" object can be selected and edited. You will find
  7311.       a text file ("txt" class) to read, and perhaps an  action  definition
  7312.       or template, if those are relevant.
  7313.  
  7314.  
  7315.  
  7316.    InContxt.DOC                      -119-                     January 1993
  7317.  
  7318.  
  7319.  
  7320.  
  7321.    InContext User Guide                      EXAMPLES AND APPLICATION NOTES
  7322.  
  7323.  
  7324.       Two  AppNote examples are shown later in this chapter, to give you an
  7325.       idea of AppNote content. One illustrates a "class" AppNote, the other
  7326.       a "tool" AppNote.
  7327.  
  7328.  
  7329.    A Usage Example: Document Archives
  7330.    ----------------------------------
  7331.  
  7332.       A very handy facility to have is a document  archive,  which  can  be
  7333.       rapidly  accessed from any work context. One possible use for such an
  7334.       archive is to hold on-disk software documentation (user manuals), but
  7335.       other uses will be discussed below.
  7336.  
  7337.  
  7338.       A Simple Approach
  7339.       -----------------
  7340.       This can be easily accomplished by:
  7341.  
  7342.  
  7343.            o   Placing the documents in a compressed "archive" file,  using
  7344.                the  LHA  program.  This  can be done manually, or in a more
  7345.                automated way discussed below.
  7346.  
  7347.            o   Creating a "Do" procedure that views the archive.
  7348.  
  7349.  
  7350.       Suppose, for example, you  have  a  collection  of  software  manuals
  7351.       (examples  which you certainly do have are INCONTXT.DOC and LHA.DOC).
  7352.       You might create a document directory, such  as  C:\DOCS,  and  place
  7353.       these  manuals  there. Then go to that directory and archive each one
  7354.       (select "Action" and "Archive"). When  asked  what  archive,  respond
  7355.       "DOCUMENT".  These steps will result in the creation of a single file
  7356.       which contains, in highly compressed form, the text of your  software
  7357.       manuals.  The name of the file is DOCUMENT.LZH. When you are comfort-
  7358.       able that this  has  been  done  correctly,  you  should  delete  the
  7359.       original documents, retaining only the archive.
  7360.  
  7361.       Now  create  a new Do procedure, perhaps called "Document". Give it a
  7362.       Description such as "View Document Archive".       For the  procedure
  7363.       definition, use the following:
  7364.  
  7365.            !viewArchive LZH c:\docs\document.lzh
  7366.  
  7367.       Whenever  you  select  this  procedure  (by  typing  "DD"  for  "Do",
  7368.       "Document"), the internal LHA viewer will be invoked on the  document
  7369.       archive. You will be able to select the desired document and view it,
  7370.       extract  it,  or  several other choices. If you extract it, a copy of
  7371.       the original document will be placed in the directory  in  which  you
  7372.       are currently working.
  7373.  
  7374.  
  7375.    InContxt.DOC                      -120-                     January 1993
  7376.  
  7377.  
  7378.  
  7379.  
  7380.    InContext User Guide                      EXAMPLES AND APPLICATION NOTES
  7381.  
  7382.  
  7383.       Handling Multiple Archives
  7384.       --------------------------
  7385.       It is easy to extend this to handle multiple archives, by just adding
  7386.       a menu to the definition of the Do procedure. A simple example is:
  7387.  
  7388.            !menu "Which archive would you like to view?"
  7389.               !choice "Document"
  7390.                  !viewLZH c:\docs\document.lzh
  7391.               !choice "Letters"
  7392.                  !viewLZH c:\personal\letters.lzh
  7393.            !endMenu
  7394.  
  7395.       This  example  assumes two archives, one containing documents and the
  7396.       other an archive of correspondence. A correspondence archive might be
  7397.       handy if you write letters from different work contexts, and want  to
  7398.       be  able  to keep them all in one place. Note, however, that there is
  7399.       no protection here against inadvertently using the same name for  two
  7400.       letters,  and  thus losing the older one. You would need to check for
  7401.       duplication of names yourself, before adding  a  new  letter  to  the
  7402.       archive.
  7403.  
  7404.       This  approach  is especially convenient when you want to write a new
  7405.       letter that is similar to one  you  wrote  before.  Simply  view  the
  7406.       Letters  archive,  select the older letter, and extract it. A copy of
  7407.       it will now be in the current directory. Rename it and edit  it,  and
  7408.       you have the new letter.
  7409.  
  7410.  
  7411.       Automatic Archiving by Class
  7412.       ----------------------------
  7413.       If  you have a document archive in which new material is added often,
  7414.       such as a correspondence archive, you may want to make  the  addition
  7415.       of such material more automatic. One way of doing this is to redefine
  7416.       the "Archive" action for a particular class. Thus, the Archive action
  7417.       for the "ltr" class might have the following procedure definition:
  7418.  
  7419.            lha u c:\personal\letters %f
  7420.            !pause
  7421.            !delete
  7422.  
  7423.       Anytime  this  archive  action is executed, the selected "ltr" object
  7424.       will be added to the letters archive without prompting the  user  for
  7425.       the archive name.
  7426.  
  7427.       If  you  have several different object classes, all of which are let-
  7428.       ters, you might make the  above  procedure  a  macro  ("arcLtr",  for
  7429.       example),  and  use the macro to define the "Archive" action for each
  7430.       of the classes. You might, for example, have both a  personal  and  a
  7431.       business letter class with different letterhead.
  7432.  
  7433.  
  7434.    InContxt.DOC                      -121-                     January 1993
  7435.  
  7436.  
  7437.  
  7438.  
  7439.    InContext User Guide                      EXAMPLES AND APPLICATION NOTES
  7440.  
  7441.  
  7442.       Saving to Desired Archive by Menu Selection
  7443.       -------------------------------------------
  7444.       An  alternative  approach  is  to  redefine the common archive action
  7445.       (i.e., the "Archive" action in the "Common" action list), so that its
  7446.       procedure presents you with a choice of  destination.  The  procedure
  7447.       definition might be:
  7448.  
  7449.            !menu "Put '%f' in which archive?"
  7450.               !choice "Document"
  7451.                  lha u c:\docs\document %f
  7452.               !choice "Letters"
  7453.                  lha u c:\personal\letters %f
  7454.               !choice "Other"
  7455.                  !query 1 "Enter name of LHA archive" 12
  7456.                  !verify "OK to archive '%f' to '%1'?"
  7457.                  lha u %1 %f
  7458.            !endMenu
  7459.            !pause
  7460.            !delete
  7461.  
  7462.       As  you  can see, lots of variations are possible. You should be able
  7463.       to adapt these ideas to your own situation.
  7464.  
  7465.  
  7466.  
  7467.  
  7468.  
  7469.  
  7470.  
  7471.  
  7472.  
  7473.  
  7474.  
  7475.  
  7476.  
  7477.  
  7478.  
  7479.  
  7480.  
  7481.  
  7482.  
  7483.  
  7484.  
  7485.  
  7486.  
  7487.  
  7488.  
  7489.  
  7490.  
  7491.  
  7492.  
  7493.    InContxt.DOC                      -122-                     January 1993
  7494.  
  7495.  
  7496.  
  7497.  
  7498.    InContext User Guide                      EXAMPLES AND APPLICATION NOTES
  7499.  
  7500.  
  7501.    A Class AppNote: Lotus 1-2-3
  7502.    ----------------------------
  7503.  
  7504.       Below is the first page of an AppNote for  Lotus  1-2-3.  The  entire
  7505.       AppNote can be found in APPNOTES.LZH.
  7506.  
  7507.    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  7508.    %                            Application Notes                             %
  7509.    %                  Lotus 1-2-3 V2 Spreadsheet Class (wk1)                  %
  7510.    %                                                                          %
  7511.    % Class                                                                    %
  7512.    %                                                                          %
  7513.    %    wk1  --  These  objects  are  spreadsheets  produced  by Lotus 1-2-3, %
  7514.    %             Version 2.X.                                                 %
  7515.    %                                                                          %
  7516.    % Relevant Software                                                        %
  7517.    %                                                                          %
  7518.    %    Lotus 1-2-3, commercial spreadsheet program from the  Lotus  Develop- %
  7519.    %    ment Corp.                                                            %
  7520.    %                                                                          %
  7521.    % How to Use This Class with InContext                                     %
  7522.    %                                                                          %
  7523.    %    There are at least two ways to encapsulate Lotus 1-2-3 for use within %
  7524.    %    InContext.  The  problem to be overcome is that Lotus 1-2-3 is one of %
  7525.    %    those programs that  fails  to  provide  a  command-line  switch  for %
  7526.    %    specifying which file you want to run it on.                          %
  7527.    %                                                                          %
  7528.    %    One  approach  to  encapsulating  1-2-3  makes  use of its "autoload" %
  7529.    %    feature. Whenever Lotus 1-2-3 is  started,  it  looks  for  the  file %
  7530.    %    "auto123.wk1",  and loads it automatically if found. Thus, one way of %
  7531.    %    causing 1-2-3 to automatically load a selected file is to  rename  it %
  7532.    %    to "autoexec.wk1", edit the file with 1-2-3, and then rename it back. %
  7533.    %    In this approach, the "Edit" procedure would be:                      %
  7534.    %                                                                          %
  7535.    %         ren %f auto123.wk1                                               %
  7536.    %         123                                                              %
  7537.    %         ren auto123.wk1 %f                                               %
  7538.    %                                                                          %
  7539.    %    This approach works well and allows you to place your spreadsheets in %
  7540.    %    whatever  directories  you  like.  It allows you to have spreadsheets %
  7541.    %    with a variety of class names. You could, for example,  establish  an %
  7542.    %    "exp"  class  for  expense  reports,  a  "tax"  class for tax record- %
  7543.    %    keeping, etc. The disadvantage of this approach is that  1-2-3  isn't %
  7544.    %    aware of the actual object name. If, for example, you want to produce %
  7545.    %    a  printer-output  file  ("prn"), you will have to manually enter the %
  7546.    %    desired filename.                                                     %
  7547.    %                                                                          %
  7548.    % Lotus 1-2-3 AppNotes               -1-                     wk1 (1/30/91) %
  7549.    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  7550.  
  7551.  
  7552.    InContxt.DOC                      -123-                     January 1993
  7553.  
  7554.  
  7555.  
  7556.  
  7557.    InContext User Guide                      EXAMPLES AND APPLICATION NOTES
  7558.  
  7559.  
  7560.    A Tool AppNote: 4PRINT Laser Print Utility
  7561.    ------------------------------------------
  7562.  
  7563.       Shown below is an AppNote for a utility program.
  7564.  
  7565.    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  7566.    %                            Application Notes                             %
  7567.    %                4PRINT ASCII File Printing Utility (none)                 %
  7568.    %                                                                          %
  7569.    % Program                                                                  %
  7570.    %                                                                          %
  7571.    %    4PRINT -- Jim Korenthal's laser printing utility for ASCII files      %
  7572.    %                                                                          %
  7573.    % Relevant Software                                                        %
  7574.    %                                                                          %
  7575.    %    The  4PRINT  program  is  an excellent shareware printing utility for %
  7576.    %    those who have a Hewlett-Packard LaserJet or compatible  printer.  It %
  7577.    %    prints  two  (and  even  three) pages side-by-side in landscape mode, %
  7578.    %    using an enclosed small font. It also supports printing on both sides %
  7579.    %    of the paper. Thus, four (six) pages of information can be printed on %
  7580.    %    each sheet of paper. The result is very readable and, in my  opinion, %
  7581.    %    more  convenient  to  use than the normal-sized DOS printout. That it %
  7582.    %    also substantially reduces costs is an added bonus.                   %
  7583.    %                                                                          %
  7584.    %    Registration cost for this program is $49.95. This program is  avail- %
  7585.    %    able on the Rams' Island BBS, and from                                %
  7586.    %                                                                          %
  7587.    %         Korenthal Associates, Inc.          Orders: (800) KA-PROGS       %
  7588.    %         230 West 13th Street                Info:   (212) 242-1790       %
  7589.    %         New York, New York 10011            CompuServe: 76004,2605       %
  7590.    %                                                                          %
  7591.    % How to Use This Program with InContext                                   %
  7592.    %                                                                          %
  7593.    %    To  use this program, simply substitute the following procedure (or a %
  7594.    %    similar one that  uses  4PRINT  the  way  you  prefer)  in  both  the %
  7595.    %    "printTxt" macro and the "incPrint" macro:                            %
  7596.    %                                                                          %
  7597.    %       4print %f                                                          %
  7598.    %                                                                          %
  7599.    % Author                                                                   %
  7600.    %                                                                          %
  7601.    %    H. Rudy Ramsey                           Phone: 303-841-2848          %
  7602.    %    Rams' Island Software                    CompuServe: 76244,324        %
  7603.    %    7644 Lakecliff, Parker, CO 80134-5904    BBS: 303-841-6269            %
  7604.    %                                                                          %
  7605.    % 4PRINT AppNotes                    -1-                     none (2/1/91) %
  7606.    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  7607.  
  7608.  
  7609.  
  7610.  
  7611.    InContxt.DOC                      -124-                     January 1993
  7612.